网站排名优化培训,东莞大岭山森林公园,跨境电商选品的策略和方法,买衣服app排行榜前十名我们已经学会了怎么在游戏中加入振动效果#xff0c;比较典型的交互场景如#xff1a;在开枪时让手柄同步振动#xff0c;实现起来真的很简单#xff0c;就是定义场景和事件#xff0c;然后在游戏事件发生时播放特定的振动资源文件#xff0c;跟播放音效是极其相似的比较典型的交互场景如在开枪时让手柄同步振动实现起来真的很简单就是定义场景和事件然后在游戏事件发生时播放特定的振动资源文件跟播放音效是极其相似的在UE中还有一种不需要与玩家交互的场景比如过场动画动画中可能也有角色和攻击/碰撞这些地方加上振动效果会更出彩。那么怎么在过场动画中加入振动效果呢
我们继续在HapticFps工程上演示。咱先做个简单的动画。我是跟着B站这个视频来创建动画的效果为让一个立方体悬浮在空中飞行一段距离然后掉到地上。 在UE编辑器v4.27里拖一个立方体进来命名为MyCube让它悬在半空中在“内容浏览器”里鼠标右键菜单选择动画 | 关卡序列命名为FlyingCube双击FlyingCube图标进入动画编辑器然后将MyCube从世界大纲视图拖入动画编辑器需要打3个关键帧。在第0帧打一个关键帧再将游标拖到第60帧将MyCube沿Y轴右移一段距离打上第二个关键帧继续将游标拖到第120帧将MyCube沿Z轴向下移动至地面再打一个关键帧在动画编辑器底部点击“播放“可以预览立方体的运动轨迹。 一个简单的动画就做好了。接着我们来实现在游戏一开始就播放这个动画。可以通过蓝图来实现为了检索方便编辑器界面语言设置为英文
通过UE编辑器的顶部工具栏打开关卡蓝图Blueprints | Open Level Blueprint在事件图表中点击鼠标右键输入BeginPlay添加这个事件在BeginPlay事件节点引脚拖一根线出来在弹出框里输入Create Level… 选择插入一个叫Create Level Sequence Player的节点在Level Sequence引脚下点击Select Asset指定FlyingCube为我们想要播放的资源鼠标右键点击Settings引脚在弹出菜单里选择Split Struct Pin然后将Settings Auto Play勾上点击保存并编译 动画播放框架搭好了接着我们就来实现在MyCube立方体碰到地面的一瞬间触发一次振动。原理也很简单在立方体触地的时间点触发一个事件然后在蓝图中响应这个事件播放一个振动资源。 具体步骤如下
双击FlyingCube图标进入动画编辑器点击左上角的“ Track”按钮然后选择 Event Track | Trigger来添加一条事件轨道将游标拖动到第120帧处然后点击事件轨左侧的“”来插入一个关键点鼠标双击上述事件关键点即可打开当前这个动画的导演蓝图在这里可以添加对这个事件的响应注事件名称默认为SequenceEvent_0在这里也可以将其重命名为CubeHitGround在导演蓝图里播放振动效果。分五步完成1从CubeHitGround事件节点引脚拖一根线出来在弹出框里输入Client Play Force Feedback记得先把Context Sensitive勾选去除插入这个函数调用2在事件图表中点击鼠标右键输入Get Player Controller插入这个节点3将Get Player Controller的Return Value引脚与Client Play Force Feedback的Target引脚连接起来4Force Feedback Effect引脚下点击Select Asset然后选择一个振动资源文件5保存并编译。 大功告成完整运行起来看看效果吧源代码工程已经上传到GitHub。【广而告之】本文只是演示在UE动画中添加原生的振动效果。主要侧重于实现方法和步骤的讲解对振动效果不必奢求。如果想要实现跨设备的高品质振动效果还得看RichTap。欲知详情请访问官网richtap-haptics.com。