Unreal入门,Timeline动画01,开关门

发布时间 2023-12-28 21:29:14作者: BuzzWeek

1. 准备一张新地图

image

选择基本地图即可

image

导入第三人称资源包

image

这里选择Third Person

image

创建基于BP_ThirdPersonGameMode和BP_ThirdPersonCharacter的蓝图BP_MyThirdPersonGameMode和BP_MyChar

image

修改当前地图的默认GameMode和Pawn

image

添加一个蓝图接口Interactable,以及一个无参数无返回值的函数Interact

image

打开项目设置添加一个Action映射Interact

image

打开BP_MyChar添加InputAction Interact事件处理,这里主要是添加一个Trace射线碰撞检测并调用Interact接口

image

运行试试

image

2. 门

创建一个基于Actor的蓝图,添加一个StaticMesh并拖到根节点DefaultSceneRoot上作为新的根节点,并设置一下门框StaticMesh

image

再添加一个StaticMesh并设置门的网格体

image

添加Interact接口

image

添加一个Boolean类型变量Closed来标记门的开关状态

image

添加Interact事件处理,Timline用作开关门动画,SetRelativeRotation用来调整门的开关程度

image

3. Timeline设置,双击Timline节点进入Timeline编辑器

image

添加一个浮点数轨道

image

将刚才的轨道改名为TrackAlpha,并在轨道上任意地方右键添加两个关键帧

image

选中第一个关键帧,并将它的Time Value都设为0.0

image

选中第二个关键帧,并将它的Time Value设为1.0(或者其它值也可以,随便调整玩玩)

image

同时选中两个关键帧,右键选中Auto自动生成一个有变化的曲线

image

勾选Use Last Keyframe

image

回到ActorDoor的事件图表,可以看到这里的Timeline多了一个输出参数TrackAlpha

image

添加一个旋转量的插值节点

image

然后拖放一个刚做好的门到地图上

image

运行试试

image