animation
秒に渡り他のアニメーションをフェードアウトさせながら animation
という名のアニメーションをフェードインさせます。
PlayMode.StopSameLayerの場合、 animation
と同じレイヤーのアニメーションは animation
がフェードインしている間フェードアウトします。
PlayMode.StopAllの場合、 animation
がフェードインしている間全てのアニメーションはフェードアウトされます。
アニメーションがループ設定になっていない場合、アニメーションを再生した後は再生位置は初期位置に戻り停止します。
// Fade the walk cycle in and fade all other animations in the same layer out. // Complete the fade within 0.2 seconds. animation.CrossFade("Walk", 0.2);
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { void Example() { animation.CrossFade("Walk", 0.2F); } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): def Example() as void: animation.CrossFade('Walk', 0.2F)
他の例:
// Makes a character contains a Run and Idle animation // fade between them when the player wants to move function Update () { if (Mathf.Abs(Input.GetAxis("Vertical")) > 0.1) animation.CrossFade("Run"); else animation.CrossFade("Idle"); }
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { void Update() { if (Mathf.Abs(Input.GetAxis("Vertical")) > 0.1F) animation.CrossFade("Run"); else animation.CrossFade("Idle"); } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): def Update() as void: if Mathf.Abs(Input.GetAxis('Vertical')) > 0.1F: animation.CrossFade('Run') else: animation.CrossFade('Idle')