目录
蓝图
点积dot
Yaw判断
后期处理动画蓝图
动画层接口
ControlRig:
蓝图
首先我们创建一个actor类,这个actor类是我们要看的东西,actor在哪,我们的动物就要看到哪里(同样,这个我们也是做一个父类,因为它会和我们的蓝图类模板一起使用)。
这样子做,将模型作为根(也可以不做根),然后把碰撞放在模型底下,这样如果之后想要模型物理模拟,碰撞体也可以跟着模型一起移动。
在pawn的模板里面做两个函数,分别是看见了这个actor和没看见;然后到actor模板中通过tick来这样做:
然后我们在人物的tick中做判断:这里我们做一个函数,这个函数专门在tick中使用:
有两种方法,只需要选择一种即可:
点积dot
Yaw判断
后期处理动画蓝图
再创建一个正常的动画蓝图,这个动画蓝图,我们将要放到后期动画蓝图里面:
动画蓝图里面:
这里有两个方法,第一个是用动画层接口:
动画层接口
简单讲解一下动画层接口,和蓝图接口差不多,你可以通过这个动画层接口由post来连接另一个动画蓝图(然后让另一个动画蓝图做东西输出姿势,也等于是post这个动画蓝图做这件事)
然后创建一个动画层接口
然后到post的动画蓝图里面把这个接口装上
然后再创建一个正常的动画蓝图,里面也加上这个动画层接口,然后在post里面要做连接:
下面这个是在post的动画蓝图里面制作的(如果报错双击进入接口,看看是不是里面没有连接):
到目前为止我们有了3个动画蓝图,一个接口,一个蓝图:
在ABP_ALI_Elephant这个动画蓝图中,我们正式编写里面的逻辑首先打开look at节点,然后选择脖子的这个骨骼
接下来我们可以看见有两个查看轴,这个应该怎么看,首先来到骨骼,将坐标轴设为相对的,然后:
可以看到,x轴是朝前的,y轴是朝上的然后:
做完这个之后,我们在动画蓝图的模板里面写一下函数,这个函数里面不需要写东西,我们在之后进行重载即可:
在主使用的动画蓝图里面重载:
来到有接口的这个动画蓝图里面,设置公开和动态:
然后用save:
这样我们就做好了简单的扭头效果,如果扭头速度太快了,可以这样,看看效果:
值得注意的是里面的蓝图模块:
ControlRig:
不知道control rig 的可以看一下:
UE4/5Control Rig绑定(向前解析)_ue骨骼绑定_多方通行8的博客-CSDN博客
这里只会用aim节点。
首先我们创建一个大象的control rig。
通过root创建一个控制点,然后这个控制点移动到大象前面,设置为offset变换:
向前解析,然后aim节点,通过获取控制器的位置放进去:
怎么看的轴(通过脖子可以看到,x朝前,y朝上【所以主轴x1,次轴y-1,实在不行粗暴解法】):
然后我们可以尝试拖拉控制点查看效果:
然后这样,有一个良好的过渡效果:
接下来我们不用控制点【这个是测试用的,我们要获取的是场景中的真实点】所以我们要创建一个向量,并且公开,然后转换为【节点是from world】【这个来自世界指的其实是相对的全局空间】:
来到post的后期处理动画蓝图,知道control rig的节点,然后:
然后在进一步:
就结束了。