IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> 动画机备忘 -> 正文阅读

[游戏开发]动画机备忘

动画层

设置

Blending

????????Override?表示将忽略其他层的信息,Additive?表示将在先前层之上添加动画。

sync(同步)

  • sync选项位于层设置中。
  • 勾选后,选择要作为“”的层。同步层的状态机立即得到与“”相同的状态机结构,但每个状态关联的animation clip 可以重新设置。取消勾选后,会回到原本的状态。
  • 这意味着同步层根本没有自己的状态机定义,而是“”状态机的一个实例。在同步层视图中对状态机的布局或结构所做的任何更改(例如,添加/删除状态或过渡)都是针对“”层进行的。
  • Layers 侧边栏中显示“S”符号,表示该层是同步层。

Timing

  • 通过 Timing 复选框,Animator 可调整同步层中每个动画所需的时间。
  • 取消选中:则调整同步层上的动画,将动画的长度拉伸到与“”层上的一致。
  • 选中:则动画长度将在两个动画之间平衡(基于权重)。
  • 总结:在两种情况下(选中和不选中),Animator 都将调整动画的长度。如果不选中,则“”层将是唯一母版。如果选中,则采用折中方案。

动画机行为(State Machine Behaviours)

什么是StateMachineBehaviour

StateMachineBehaviour是一类特殊脚本。

与将常规 Unity 脚本 (MonoBehaviour) 附加到单个游戏对象类似, StateMachineBehaviour 脚本可以附加到状态机中的单个状态。因此可编写一些将在状态机进入退出保持在特定状态时执行的代码,例如:

  • 在进入或退出状态时播放声音
  • 仅在相应状态下执行某些测试(如地面检测)
  • 激活/控制与特定状态相关的特效

使用MachineBehaviour

在状态机中选择状态,然后在Inspector中点击【Add Behaviour】按钮,添加/创建脚本。

StateMachineBehaviour 具有一些预定义消息:?OnStateEnterOnStateExitOnStateIKOnStateMoveOnStateUpdate

消息

OnStateEnter当状态机评估此状态时,在第一个 Update 帧上进行调用。
OnStateExit当状态机评估此状态时,在最后一个 Update 帧上进行调用。
OnStateIK刚好在 MonoBehaviour.OnAnimatorIK 后调用。
OnStateMove刚好在 MonoBehaviour.OnAnimatorMove 后调用。
OnStateUpdate除第一帧和最后一帧外,在每个 Update 帧上进行调用。

公共函数?

OnStateMachineEnter当过渡到状态机时,在第一个 Update 帧上进行调用。当过渡到状态机子状态时,不进行调用。
OnStateMachineExit当转出 StateMachine 时,在最后一个 Update 帧上进行调用。当过渡到 StateMachine 子状态时,不进行调用。

手册详解? https://docs.unity3d.com/cn/2020.3/ScriptReference/StateMachineBehaviour.html


参数

使用int参数性能更好:

用?Animator.StringToHash?函数来获取整数标识符值(参数的int值)。例如:

runState = Animator.StringToHash("Base Layer.Run");
animator.SetBool(runState, false);


Animator组件

Culling Mode:

建议设置为Cull Update Transforms 或?Cull Completely 以节省性能:renderer不可见时禁用动画

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-05-09 13:05:27  更:2022-05-09 13:05:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 11:29:56-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码