动画片段是指原始的fbx
切片动画
粉色的骨架网格体,浅绿色的动画片段
#1. 菜单功能区域
前面的Save
、Browse
、Preview Mesh
和以往的都一样
Create Asset
:该动画片段可以关联创建的资产
在Create Animation
和Create PostAsset
中有些差异
Animation Data
:使用当前动画片段的关键帧来创建一个新的动画(复制)
Preview Mesh
:使用当前预览的网格体来创建一个新的动画,包括自定义或动画叠加、曲线等数据
在创建姿态的时候,可以选择插入一个姿态资源
Insert Pose
:选择一个现有的姿态插入
--------------------------------------------------------------------------------------------------------
Reimport Animation
:重新从原始文件地址重新导入动画(采用之前的导入设置)
Compression
:压缩当前的动画数据,此优化可以减少几倍的动画计算量
Export Asset
:导出资源
这里的功能同上面的Create Animation
一致,名字也一样的
Key
:在选中任意骨骼的时候,可以给当前骨骼的动画叠加一条曲线,修补动画(骨架变换)
Apply
:将骨架变换的修改应用到骨架网格体
在有动画数据修改的时候,包括叠加曲线,骨架网格体会提示需要保存
Make Static Mesh
:将当前动画姿态快照创建一个静态网格体
#2. Curve Editor & Anim Curve 曲线编辑器及动画曲线管理
曲线就是游戏中的手感的另外一种说法,当然了还有其他的因素影响
Curve Editor
:在有动画曲线编辑的时候可以打开界面
Anim Curve
:是在菜单栏中打开,是管理当前动画曲线/权重
TODO
#3. Asset Details 资产详情
动画片段拥有的属性,片段在Unreal能够发挥的功能属性
Retarget Source
:当这个动画需要被骨架重定向的时候,使用的姿态(A或T-Pose)
Retarget Source Asset
:粉色的资产是骨架网格体,骨架重定向的时候使用的骨架网格体,否则使用默认的
Preview Pose Asset
:预览时候使用的姿态文件(UE中可以创建姿态文件,用于骨架重定向)
Animation Track Names
:动画的轨道名称(骨骼名字,对应的骨架网格体)
Interpolation
:动画插值方式
Linear
:线性过渡插值
Step
:步进插值,每次步进等量的数值
--------------------------------------------------------------------------------------------------------
Rate Scale
:动画片段的播放速度
Skeleton
:动画片段使用的骨架
Parent Asset
:父动画片段资产
父子动画片段的时候,子片段继承父动画片段的绝大部分属性,可自定义少量属性
Asset Mapping Table
:资产映射表格,当有父动画片段的时候有效
Asset User Data
:用户自定义数据 https://historia.co.jp/archives/8632/
#3-2. Additive Settings 叠加动画设置
动画叠加可以在需要的时候帮助我们计算偏移,感觉AR、VR用的
Additive Anim Type
:叠加动画类型
No additive
:不进行动画叠加
Local Space
:在本地空间进行动画叠加,(本地空间是相对于世界空间来说的坐标体系)
Mesh Space
:网格体的空间,即是骨架的空间,也就是骨骼的坐标体系
Base Pose Type
:基础叠加姿态类型
None
:不使用任何的叠加姿态
Skeleton Reference Pose
:骨架网格体引用姿态
Selected animation scaled
:对选中的动画进行缩放叠加
Selected animation frame
:对选中的动画的帧叠加
Base Pose animation
:基础姿态动画
Ref Frame Index
:引用帧数索引
Allow Frame Stripping
:是否允许剥除动画帧数
Compresion Error Threshold
:压缩错误阈值大小
Bone Compression Settings
:骨骼压缩设置,可以和画质设置有关系
Curve Compression Settings
:动画曲线压缩设置,可以和画质设置有关系
Do Not Override Compression
:不进行覆盖压缩
#3-4. Root Motion 根骨骼运动
一般来说,骨架中显示为红色的骨骼是默认的根骨骼,根骨骼运动的作用是部分带位移的动画,
比如LOL中锐雯的Q技能就是根骨骼运行
EnableRootMotion
:是否允许动画进行根骨骼运动
Root Motion Root Lock
:根骨骼运动锁定的根
Ref Pose
:使用引用的姿态来锁定
Anim First Frame
:使用动画的第一帧来锁定
Zero
:使用变换0来锁定,Matrix0,缩放为0等于消失
#3-5. Import Settings 导入设置
相关见 UE Gameplay入门44(动画导入fbx及制作标准)
#3-6. Transform 导入变换
相关见 UE Gameplay入门44(动画导入fbx及制作标准)
#3-7. Miscellaneous 杂项设置
相关见 UE Gameplay入门44(动画导入fbx及制作标准)
Source File
:导入的文件路径及文件的修改时间
Custom Attributes
:自定义属性
Per Bone Custom Attribute
:每个骨骼的自定义属性
Meta Data
:用户自定义数据 =Asset User Data
Thumbnail
:缩略图设置,在编辑中的缩略图
#4. Animation Sequence Editor 动画序列编辑器
动画片段的序列编辑器是UE动画系统中非常高阶的一个功能,在动画的播放过程中,可以给指定的动画帧添加事件通知,
包括了游戏通用了音效、粒子、武器拖尾,可以标记动画发生,重置布料衣服、攻击判定等等
编辑器可以划分为4块区域,分别是通知、曲线、叠加层级轨道
、动画序列编辑器
、控制器
、作用帧数和预览
Notifies
:动画片段通知轨道管理,可以增减并发通知轨道
Add Notify Track
:添加一个新的并发通知轨道
Show Notify Timing Nodes
:是否显示定时的轨道节点的编号
Insert Notify Track
:插入一条新的轨道
Remove Notify Track
:移除此通知轨道
---------------------------------------------------------------------------------------------------------------------------------
Curve
:曲线
曲线是管理动画片段怎么样进行过渡的,类似于力的反馈效果
Add Curve...
:添加一条新的曲线
Add Metadata...
:添加曲线的元数据=添加自定义数据(修饰数据的数据叫元数据,比如json\xml都可以叫元数据)
Remove All Curves
:移除所有的曲线
Show Curve Keys
:是否显示曲线的关键帧
Edit Curve
:打开曲线编辑器进行编辑
Convert To Metadata
:将曲线转换为常量的元数据(自定义数据,无法反转为曲线)
Remove Curve
:移除此曲线
---------------------------------------------------------------------------------------------------------------------------------
Additive Layer Tracks
:叠加层轨道,在骨骼叠加层修补动画的时候使用
UE中Layer和Unity的概念不一样的,Unity中使用Layer可以分离一个类别,而在UE中的Layer
是狭小的一个功能集合,比如一条动画轨道就是一个Layer,可以使用曲线来变换,通常来说Layer和动画有关
顶级的Layer拥有的拓展功能
Edit Curve
:编辑这个Layer的所有曲线,包括平移、旋转、缩放的xyz数据
Remove Track
:移除这个叠加Layer轨道
Enabled
:是否开启这条轨道的曲线功能
#4-2. Animation Sequence Editor 动画片段序列编辑器
最上面显示的是动画的帧数,70* (2.33)(43.76%)
指标的意思是第70帧,2.33秒,进度是43.76%
中间是标有系号的定时功能节点,一般都是系统内置,也可以用户自定义
最下面的是动画曲线及动画叠加层级曲线
第一二栏/空白栏位右击菜单
这个菜单是用来操作动画本身的,显示方式、动画裁剪、增补等
Snapping
:对齐吸附方式,可以使用Frame帧数对齐
或Notifies通知对齐
Timeline Options
:时间线选项
Seconds
:使用秒杀作为时间线单位
Frames
:使用帧数作为世界线单位
Additional Display
:附加的显示
Precentage
:附加显示百分比
Secondary
:附加显示秒数
Sequence Editing
:动画序列进行编辑
Remove frame 0 to frame 88
:移除[0,88]帧的动画,将会生成一个新的动画
Remove from frame 89 to frame 161
:移除[89,161]帧的动画,将会生成一个新的动画
Insert frame befroe 88
:在88帧前面插入一帧
Insert frame after 88
:在88帧后面插入一帧
Append in the beginning
:在动画的开始追加帧数,需要手动指定数量
Append at the end
:在动画的结束追加帧数,需要手动指定数量
Re-zero at frame 88
:将88帧重置为第0帧
Re-zero at current time
:将当前的时间重置为第0帧
---------------------------------------------------------------------------------------------------------------------------------
#4-2. Notify动画通知
通知轨道可以添加的通知,通知分为3大类型,分别是定时触发通知、状态维持触发通知、同步标记通知,分别对应选项
Add Notify...
、Add Notify State...
、Add Sync Marker...
骨架这边定义的通知,在动画蓝图那边可截获(必须是自定义的通知)
Add Notify...
:定时触发通知
定时触发通知用于触发当前帧需要执行的内容,比如播放音效、粒子等
New Notify...
:新增一个自定义骨架通知
自定义的通知默认是浅黄色,一般用于用户自定义事件,所有和动画相关的都可以使用RPC进行网络同步
Trigger Settings
:通知触发设置
Notify Trigger Chance
:通知的触发几率(增加游戏性)
Trigger on Dedicated Server
:是否在专用服务器(云服务器)上触发(是否需要同步这个通知)
Trigger on Follower
:是否在同步组(UE动画的优化功能)的跟随者动画上触发
Notify Filter Type
:通知的过滤类型,可以通过LOD来过滤这个通知是否有效(优化性能)
Category
:通知的分类
Event
:通知事件分类设置
Trigger Weigh Threshold
:通知触发权重最低阈值(UE给我们默认10000个通知无压力)
Montage Tick Type
:动画通知在蒙太奇动画中Tick的类型
Queued
:使用队列的方式进行Tick,必定触发
Branching Point
:偶发性的进行Tick
和自定义骨架通知类似的还有一些系统内置的功能通知:
Reset Clothing Sim
、Pause Clothing Sim
、Resume Clothing Sim
、Reset Dynamics
这类系统内置功能的通知默认是浅蓝色
Reset Clothing Sim
:定时触发重置布料模拟
Pause Clothing Sim
:定时触发暂停布料模拟
Resume Clothing Sim
:恢复布料模拟
Reset Dynamics
:重置重力模拟
两种播放粒子的通知,分别播放普通游戏粒子和新版本的特效粒子,节点基本一样,需求的资源不同
下面的Trigger Settings
、Category
和我们自定义的骨架通知一样,每个通知都有的基础属性
Niagara System
:新版本的粒子系统资源
Location Offset
:粒子播放相对坐标位置偏移
Rotation Offset
:粒子播放相对旋转偏移
Scale
:粒子播放相对缩放
Attached
:是否将粒子进行附加到骨骼插槽
Socket Name
:插槽的名字
Notify Color
:修改通知在动画编辑器的颜色
Absolute Scale
:是否使用绝对的缩放,不受到骨骼缩放的影响
播放声音的通知默认是紫色
Sound
:需要播放的声音片段或者程序化的声音
Volume Multiplier
:声音音量倍数(UE可以程序化放大声音)
Pitch Multiplier
:声音的高音倍数
Follow
:是否设置声音跟随骨骼
Attach Name
:附加到骨骼的名字
Preview Ignore Attenuation
:预览忽略的声音衰减
Notify Color
:修改声音通知在动画编辑器中显示的颜色
---------------------------------------------------------------------------------------------------------------------------------
Add Notify State...
:状态维持触发通知,在一个时间段内一直有效触发,比如武器挥动拖尾效果,有效攻击判定
UE内置了4种类型的有效时段状态通知,全部都是和粒子有关的,这些通知的默认是灰紫色
Trail
:制作挥动拖尾粒子效果
PSTemplate
:ParticleSystem模板,选择需要使用的粒子资源
First Socket Name
:拖尾挂载的第一个骨骼名字
Second Socket Name
:拖尾挂载的第二个骨骼名字
Width Scale Mode
:拖尾宽度缩放模式
From Center
:从中心位置开始缩放
From First Socket
:从第一个插槽位置开始缩放
From Second Socket
:从第二个插槽位置开始缩放
Width Scale Curve
:宽带缩放曲线资源,曲线是定义在动画序列编辑器中的曲线
Recycle Spawned System
:是否回收已经生成的粒子
Render Geometry
:是否开启显示粒子效果
Render Spawn Points
:是否开启显示生成点,在生成的地方debug显示粒子星星
Render Tangents
:是否开启显示切线
Render Tessellation
:是否开启显示曲面细分(次世代效果)
Notify Color
:通知在动画编辑器中显示的颜色
---------------------------------------------------------------------------------------------------------------------------------
Sync Marker
:同步标记通知
同步标记通知用于动画本身的同步,比如跑步动画一般比待机动画要长,进行混合之后会出现不和谐的情况,
使用同步标记通知可以让跑步动画和待机动画的时间一致,过渡更加和谐
https://docs.unrealengine.com/4.27/en-US/AnimatingObjects/SkeletalMeshAnimation/SyncGroups/
此功能是配合动画蓝图的SyncGroup
同步组来一起使用的
AnimNotify
:自定义定时触发的动画通知
AnimNotifyState
:自定义定时触发有效时段的动画通知
class MONTAGETEST_API UAnimTest : public UAnimNotify
class MONTAGETEST_API UAnimTest : public UAnimNotifyState
#4-4. 控制器
To Front/End
:将编辑器指标移动到这个片段的开头/结尾
To Previous/Next
:将编辑器指标移动到前一帧/下一帧
Reverse/Play
:反/正向播放当前的动画片段
Record
:录制新的动画
Loop
:切换为循环播放还是单次播放
#4-5. 作用帧数和预览
Working Range Start/End
:当前动画片段可以正常播放的起始/结束帧数范围
Playback Range Start/End Time
:已经录制当前动画片段的起始/结束帧数范围
View Range Start/End Time
:预览动画片段的起始/结束帧数范围