playcanvas / playcanvas/engine

Anim Blend Tree 1D weights issue

Open
#6,218 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area: animation
Dominant language
JavaScript
Stars
16.8k
Forks
2k
Avg merge
4h 32m
Merged PRs (30d)
222

Description

Followup on #6211

Given the path

Level1.Level2.Dance

During the weights calculation loop in Anim Blend Tree 1D, the leaf node (Dance) would take the full weight (1), which would make its parent (Level2) have a zero weight.

image

On screenshot:
c1 = Dance
c2 = Level2

This sets the parent weight to zero, which breaks the animation.

image

If the weight is hardcoded to always return 1, then the animation is played correctly:
image

Repro:
https://playcanvas.com/project/1205544/overview/blend-tree-forked

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked reproduction project and inspect the Anim Blend Tree 1D weights calculation loop described in the issue. Trace the Level1.Level2.Dance path and verify that the parent retains the correct weight so the animation plays correctly without hardcoding the weight.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
game-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.