基础知识补全_UE资源类
材质
—————就是那个大圆球
贴图
基础的2D图片,为模型表面提供色彩、透明度等信息。
法线
垂直于模型表面的方向
如果一个面的法线背对摄像机,通常会不进行渲染,以节省性能,称为背面剔除
知乎-什么是法线?3D建模中法线贴图的原理和工作方式是怎样的?
UV坐标
XYZ:用来定义模型在三维空间中的位置。
UV:用来定义模型表面在二维纹理上的位置。
U 通常代表纹理的水平方向(类似X)。
V 通常代表纹理的垂直方向(类似Y,但在图像坐标系中通常原点在左上角,V轴向下为正方向)。
有挺多种不同的展开方法,比如平面、圆柱、球面映射等
目前先知道,3D网格转换为2D的平面展示,以方便上贴图
材质效果
UE里材质有多种效果,核心的包括有:高光、粗糙度、金属感、透明度等
材质是直接应用到模型上的资源,而贴图是材质中使用到的图像。
多种效果配合起来,搭配贴图,组合成为材质,赋予模型不同的表现效果。
双面/单面显示
让一个模型不适用背面剔除,即可达成双面显示的效果,不同软件有不同的设置方法。
学习任务
制作材质,使得正方体带有:前、后、上、下、左、右的文字。
制作半透明材质应用到球体,不需要特殊贴图。
动画资源
—————制作很麻烦的样子
UE常用动画资源种类
动画类型 | 概念 | 典型用途 |
Animation Sequence | 最基础的动画片段,一段完整的动作数据 | 走路、跑步、攻击、待机 |
Anim Montage | 动画蒙太奇,可把多个动画片段组合成一段 | 连招攻击、技能释放、剧情动画 |
Blend Space | 根据参数自动混合多个动画 | 走路→跑步的平滑过渡、移动方向混合 |
Blend Space 1D | 只有一个混合参数的混合空间 | 根据速度混合走/跑/冲刺 |
Aim Offset | 瞄准偏移,只影响上半身骨骼 | 角色移动时上半身瞄准目标 |
Morph Target | 模型形变数据,不依赖骨骼 | 面部表情、口型同步、肌肉变形 |
Additive Animation | 叠加动画,在基础动画上额外叠加动作 | 上半身射击+下半身跑步、受伤反应 |
Layered blend per bone | 按骨骼分层混合,不同骨骼用不同动画 | 上半身攻击+下半身移动 |
State Machine | 状态机,定义动画状态之间的转换规则 | 待机→走路→跑步的状态切换 |
上述动画在UE中分别是怎么播放的
暂跳过,实际要用的时候再现学。
动画的Notify
动画事件,当动画序列播放到指定进度的时候,引擎将触发该事件,从而启用游戏逻辑,比如播个音效特效、判定伤害等。
类型 | 用途 |
Anim Notify | 基础通知,触发蓝图事件或调用函数 |
Anim Notify State | 持续状态通知,有开始和结束两个时间点(如播放持续音效) |
Anim Notify Track | 通知轨道,可承载多个通知 |
材质动画
不改变模型的顶点或者骨骼位置,而是改变材质参数,从而实现一些表现效果。
比如说一些火焰/水流动画,溶解,渐变,UV滚动的效果。
不知为何,联想到了发廊旋转灯:
Animation Sequence类型的动画,数据基于什么坐标系
基于模型本身的局部坐标系,常以Root骨骼作为坐标系原点。
UE官方的动画文档
学习任务
制作一个角色BP_SphereCube,使用SKM_SphereCube模型,播放1.3做好的骨骼动画。
给角色BP_SphereCube添加一个组件,使用引擎默认的BOX,attach到SKM_SphereCube的Empty骨骼。
基于Cube骨骼新加一个Socker,此Socker在Cube骨骼上方2M处,命名Socker_Cube。
给BP_SphereCube添加一个组件,使用引擎默认Sphere,attach到SKM_SphereCube的Socker_Cube。
UE移动组件
—————这里就浅入浅出
RootMotion开启方式
插曲:
发现自己的UE骨骼树中是这样的,
解决方式是取消打组,重新导出导入。
UE粒子系统
—————就是那个让显卡燃烧的东西
Niagara的基础概念
系统:整个特效工程的总容器,包含多个发射器
发射器:负责粒子的出生与销毁,包含多个模块
模块:负责粒子的属性,如添加重力、旋转等
参数:生命周期、速度、颜色、尺寸、角度、初始角度等……
渲染器:决定粒子的可见形式,将粒子渲染为永远面向摄像机的图片、具体的3D模型、可以照亮场景的光源、连成一线的飘带轨迹等
发射器
CPU发射器:粒子的逻辑在CPU上完成,通常处理复杂的粒子逻辑、事件、碰撞
GPU发射器:部分功能受限,但性能更高,支持更大量级的粒子数量
粒子常用的资源
贴图、材质、静态/骨骼网格体、声音比较常用;
高级特效还会有光源、贴花、物理效果、动画、蓝图等……
学习任务
设置粒子无限循环,和一次就结束
使用动画Notify,在1.3的动画上播出任何一个特效
声音
—————就是那个特别占用存储空间的东西
Wwise的基础概念
全称Wave Works Interactive Sound Engine,并非UE原生系统,是一款音频中间件,有较强通用性,兼容不同游戏引擎。
音效师在Wwise中设计完一整套的音频后,输出一份SoundBank(.bnk 文件),这个文件里面会包含了 声音资源 & 播放逻辑。
而对于UE程序员,则只需要触发这份SoundBank里对应的Event,即可在游戏里播放一整套由音效师设计好的音频。
UE5自带的音频系统是MetaSounds,也相当强大,并且由于是UE5原生,性能也会更好,但Wwise仍是主流。
学习任务
使用动画Notify,在1.3的动画上播出任何一个音效