public void Play (string stateName, int layer= -1, float normalizedTime= float.NegativeInfinity);
public void Play (int stateNameHash, int layer= -1, float normalizedTime= float.NegativeInfinity);

参数

stateName状态名称。
stateNameHash状态的哈希名称。如果 statNameHash 为 0,则更改当前状态时间。
layer层的索引。如果 layer 为 -1,则播放第一个具有给定状态名称或哈希的状态。
normalizedTime时间偏移(以百分比表示)。

描述

播放一个状态。

//Attach this script to the GameObject you want to animate
//Create an Animator Controller component if you haven't already (Right click in the Assets folder and go to Create>Animator Controller).
//Click and drag your Animator Controller into the Inspector of the GameObject you wish to animate.
//In your Animator Controller, create and name two states- one as your default state, and one as the state you want to play ("Jump" in this case). Make sure to link both of these to the Entry state.
//Press the space key in Play Mode to switch to the second state.

using UnityEngine;

public class Example : MonoBehaviour { Animator m_Animator;

void Start() { //Fetch the Animator from your GameObject m_Animator = GetComponent<Animator>(); }

private void Update() { //Press the space key to play the "Jump" state if (Input.GetKey(KeyCode.Space)) { m_Animator.Play("Jump"); } } }