Version: 2017.3

AnimationState.AddMixingTransform

Switch to Manual
public void AddMixingTransform (Transform mix, bool recursive= true);

Parameters

mix Удаляет transform, который должен быть анимирован.
recursive Whether to also animate all children of the specified transform.

Description

Добавляет transform, который должен быть анимирован. Это позволяет сократить количество анимаций, которые вы должны создать.

For example you might have a handwaving animation. You might want to play the hand waving animation on a idle character or on a walking character. Either you have to create 2 hand waving animations one for idle, one for walking. By using mixing the hand waving animation will have full control of the shoulder. But the lower body will not be affected by it, and continue playing the idle or walk animation. Thus you only need one hand waving animation.

If recursive is true all children of the mix transform will also be animated. If you don't call AddMixingTransform, all animation curves will be used.

using UnityEngine;
using System.Collections;

public class ExampleScript : MonoBehaviour { public Animation anim; public Transform shoulder;

void Start() { // Add mixing transform anim["wave_hand"].AddMixingTransform(shoulder); } }

Другой пример использования пути:

using UnityEngine;
using System.Collections;

public class ExampleScript : MonoBehaviour { public Animation anim;

void Start() { // Adds a mixing transform using a path instead Transform mixTransform = transform.Find("root/upper_body/left_shoulder");

// Add mixing transform anim["wave_hand"].AddMixingTransform(mixTransform); } }