I'm trying to learn how to use Playables. Following the code here, I can get an animation to play just fine, except it doesn't apply foot IK properly. If I put the same animation clip into an AnimatorController, I can go to the state and check "Foot IK" and it plays correctly. Back to the Playable code. There are two function calls that I could find that had anything to do with IK: AnimationClipPlayable.SetApplyPlayableIK() and AnimationClipPlayable.SetApplyFootIK(). Neither one has any effect. I have tried both together, each one separately, and placing it before my call to Play() and after. I also tried calling it every frame. Using the PlayableGraph Visualizer, it shows that the values ApplyFootIK and ApplyPlayableIK are indeed being set, but the feet are still sliding around all over the place. As stated above, placing the exact same animation clip in an AnimatorController, and then marking the animation state's "Foot IK" checkbox works, but I don't think encapsulating every single animation clip in an AnimatorController is intended behavior. I want to use the Playable API, because I like the flexible nature, but not being able to use foot IK is something of a deal breaker. Here's my code: Code (CSharp): private void Start() { // creating the PlayableGraph - 'graph' is declared as a field // in the class declaration graph = PlayableGraph.Create(); // creating an output AnimationPlayableOutput output = AnimationPlayableOutput.Create(graph, "Idle", anim); // setting the update mode to automatically update graph.SetTimeUpdateMode(DirectorUpdateMode.GameTime); // 'acp' is declared as an AnimationClipPlayable field in the class // idleClipGraphs is a list, and chooseRandom() is an extension method // from my own library acp = idleClipGraphs.chooseRandom(); // neither one of these work, either together or separately. acp.SetApplyFootIK(true); acp.SetApplyPlayableIK(true); // adding the clip to the graph output.SetSourcePlayable(acp); // playing it graph.Play(); } The animation plays just fine, but the feet slide around, rather than being planted like if I use an AnimatorController. Anyone that can tell me what I'm doing wrong? The API documentation is a little skimpy on a lot of these function calls.