Unity has stated that they will not fix this bug.
RESOLUTION NOTE: Thank you for bringing this issue to our attention. Unfortunately, after careful consideration we will not be addressing your issue at this time, as we are currently committed to resolving other higher-priority issues, as well as delivering the new animation system. Our priority levels are determined by factors such as the severity and frequency of an issue and the number of users affected by it. However we know each case is different, so please continue to log any issues you find, as well as provide any general feedback on our roadmap page to help us prioritize.
When the effective weight of AnimationScriptPlayable
is not 1
, the PropertyStreamHandle
within it does not take effect.
- Open the "SampleScene".
- Enter play mode, then you will see "PSH Value: 100.000" in the Game view.
- Drag the weight slider in the Game view.
- If the weight is not
1
, the "PSH Value" will become0.000
instead of100.000*weight
.
If an AnimationClipPlayable
is added as input to PshSetJob
and the PropertyStreamHandle
is bound to a custom property in the AnimationClip, then PropertyStreamHandle.SetFloat
will modify the property value as expected and be affected by the weight. However, when the weight is not 1
, the modified property value is affected by the sign of the original property value.
Open the PlayableGraph Monitor window from "Tools/Bamboo/PlayableGraph Monitor" to inspect the PlayableGraph.
This issue can be temporarily fixed by binding a property named GravityWeight
to the Animator. But I am not sure if doing so will have any other negative effects.
_animator.BindCustomStreamProperty("GravityWeight", CustomStreamPropertyType.Float);
or
_animator.BindStreamProperty(_animator.transform, typeof(Animator), "GravityWeight");