UnityAPI手册-2019.4官网版
文集大纲加载中……
本文档使用 MrDoc 发布
-
+
首页
Animator.Play
# [Animator](Animator.html).Play 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 | 状态哈希名称。如果 stateNameHash 为 0,则会更改当前状态时间。 | | layer | 层的索引。如果 layer 为 -1,则播放第一个具有给定状态名称或哈希的状态。 | | normalizedTime | 介于零到一之间的时间偏移。 | ## 描述 播放一个状态。 指定状态名称(即用于生成哈希的字符串)时,它应包含父层的名称。例如,如果 `Base Layer` 中有 `Bounce` 状态,则名称为 `Base Layer.Bounce`。 `normalizedTime` 参数的值介于 0 和 1 之间。如果此参数保留为零,则 [Play](Animator.Play.html) 将按预期运行。可以提供不同的起点。例如,可以将 `normalizedTime` 设置为 0.5,这意味着动画从中途开始。如果过渡是从一个状态切换到另一个状态,可以混合也可以不混合。如果过渡从 0.75 开始,它将与另一个状态混合。如果未设置过渡,则 [Play](Animator.Play.html) 将保持为 1.0 而不进行任何更改。  \ *以下示例脚本将生成立方体的动画。* 此立方体有两个动画器状态,分别名为 `Rest` 和 `Bounce`。在 `Rest` 中将播放空的动画。按下空格键后,立方体将切换到 `Bounce` 状态。这会使立方体上下跳动两次。然后立方体返回到 `Rest` 状态。因为从 [Animator.Play](Animator.Play.html) 脚本中选择了 `Bounce`,所以不需要过渡。但从 `Bounce` 返回到 `Rest` 却要有过渡。此处勾选了 `Has Exit Time` 以确保 `Bounce` 持续一秒钟。将此脚本附加到需要生成动画的 GameObject。 ``` using UnityEngine; // Press the space key in Play Mode to switch to the Bounce state. public class Move : MonoBehaviour { private Animator anim; void Start() { anim = GetComponent<Animator>(); } void Update() { if (Input.GetKeyDown(KeyCode.Space)) { if (anim != null) { // play Bounce but start at a quarter of the way though anim.Play("Base Layer.Bounce", 0, 0.25f); } } } } ```
da
2022年5月24日 00:06
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
关于 MrDoc
觅思文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅思文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅思文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
Markdown文件
分享
链接
类型
密码
更新密码