Search Issue Tracker

Fixed in 2018.3.X

Votes

0

Found in

2018.1.1f1

Issue ID

1052271

Regression

No

PlayableBehaviour.ProcessFrame isn't being called properly

Animation

-

How to reproduce:
1. Open the user-submitted project
2. Enter Play mode and click on the Playable Graph Window
3. In the Playable Graph Window click the upper left drop-down menu and select "Graph dude"
4. Click on the "AnimationClipPlayableWrapper", observe that It's playing and then observe the console

Expected result: an exception is thrown in the console
Actual result: the clip is playing just fine without an exception

Reproduced in: 2018.3.0a3, 2018.2.0b11, 2018.1.7f1, 2017.4.6f1, 2017.2.3p2
Couldn't test in: 2017.1.4p2

Solution:

The type of process function called on a Playable is inherently tied to the type of PlayableOutput used.

AnimationPlayableOutput will call ProcessAnimation, and will also support AnimationScriptPlayables' ProcessAnimation, whereas a ScriptPlayableOutput will call ProcessFrame on script Playables.

If the user wants his/her ScriptPlayable to both drive Animation and have ProcessFrame, it'll need to be connected to a ScriptPlayableOutput and AnimationPlayableOutput, directly or indirectly.

  1. Resolution Note (fix version 2018.3):

    The type of process function called on a Playable is inherently tied to the type of PlayableOutput used.

    AnimationPlayableOutput will call ProcessAnimation, and will also support AnimationScriptPlayables' ProcessAnimation, whereas a ScriptPlayableOutput will call ProcessFrame on script Playables.

    If the user wants his/her ScriptPlayable to both drive Animation and have ProcessFrame, it'll need to be connected to a ScriptPlayableOutput and AnimationPlayableOutput, directly or indirectly.

    We have updated our documentation to better reflect this.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.