public void ProcessAnimation(AnimationStream stream) { if (weightA == 0 && weightB == 0) { return; } var A = stream.GetInputStream(0); var B = stream.GetInputStream(1); if (weightB == 0) { if (weightA == 1) { SMixerUtility.StreamSet(handles, stream, A); } else { SMixerUtility.StreamMix(handles, stream, stream, A, weightA); // blend-in transition to A from stream } } else { if (weightA == 1) { SMixerUtility.StreamMix(handles, stream, A, B, weightB); // blend-in transition to B from A } else { SMixerUtility.StreamMixMix(handles, stream, stream, A, B, weightA, weightB); } } }
public void ProcessRootMotion(AnimationStream stream) { if (ApplyRootMotion) { SMixerUtility.ProcessRootMotion(stream, weightA, weightB); } }