ue3d虚幻UE引擎创建并发射子弹

虚幻UE引擎创建并发射子弹

分类:
ue3d - 虚幻UE引擎创建并发射子弹

在本文中3D天堂将跟大家一起探讨如何在UE5中制作发射子弹。首先,创建一个用于子弹的蓝图。

由于BP_Player将接收发射子弹的输入,因此子弹蓝图会将Actor设置为父类并将其命名为BP_Bullet。

ue3d - 虚幻UE引擎创建并发射子弹

然后添加一个Cube组件,设置Cube的Scale值为(0.75, 0.25, 1)

ue3d - 虚幻UE引擎创建并发射子弹

当从摄像机的角度发射子弹时,它将沿正z方向移动。但是,最好在射击时将子弹旋转90度,同时沿local-x方向移动它。

所以,可以做了一个节点,让子弹在x轴方向移动。

BP_Player移动的节点中的Make_Vector部分相同,只是部分更改为Get Actor forward Vector。而BP_Bullet的moveSpeed默认值设置为800。

ue3d - 虚幻UE引擎创建并发射子弹

现在实施BP_Player来发射子弹。首先,这次做Action Mappings,就可以接收到发射子弹的输入。

它绑定到接收鼠标左键输入的Fire。

ue3d - 虚幻UE引擎创建并发射子弹

右键单击BP_Player编辑窗口中的事件图表并搜索Fire以查看创建的Fire Event。

ue3d - 虚幻UE引擎创建并发射子弹
  • 按下:按下时
  • 发布时间:何时

因为希望子弹在按下时发射,所以就要将它连接到Pressed。

首先,必须动态创建BP_Bullet,实现这个的节点是从类中生成Actor。顾名思义,Actor是用一个类生成的,因此将类设置为BP_Bullet。

ue3d - 虚幻UE引擎创建并发射子弹

现在需要设置生成位置,要设置该位置,将要添加一个组件来设置子弹的发射位置,有一个箭头组件作为组件,通常用于指定特定的不可见位置,将相应的组件添加到BP_Player。然后,将箭头组件沿y轴旋转90度,并沿z轴移动100度,使子弹的局部x轴成为全局z轴。

ue3d - 虚幻UE引擎创建并发射子弹

将此组件的位置分配给Spawn Actor From Class的Spawn Transform,如果查看变量聚集的地方,可以看到添加了Arrow变量。

在连接Get World Transform节点后分配变量,因为需要在使用Get导入后将其转换为Transform。

ue3d - 虚幻UE引擎创建并发射子弹

此外,还有一个Collision Handling Override项,它具有以下值,此项设置当出生地点有其他Actor并且他们相互碰撞时要做什么。

  1. 回退到默认设置
  2. 始终生成,忽略碰撞
  3. 它在附近寻找一个非碰撞点,如果不存在则创建一个。
  4. 在附近寻找一个非碰撞点,如果没有找到,它就不会创建它。
  5. 不要创造

在这种情况下,选择Always Spawn、Ignore Collisions以无条件地创建它们,编译保存后运行,可以看到只要鼠标左键,就会生成子弹。最后,添加子弹发射时的音效。

ue3d - 虚幻UE引擎创建并发射子弹

在产生子弹的节点后面添加一个Play Sound2D节点,在添加节点的Sound项中选择Shoot。

ue3d - 虚幻UE引擎创建并发射子弹

激活后,每次发射子弹时都会听到声音效果。

以上是3D天堂关于在虚幻引擎中创建与发射子弹的全部内容,如果你有任何反馈,请随时在本页面下方留言。

相关信息

  • 类型:知识
  • 字数:714
  • 字符:2087
  • 适用软件:虚幻引擎
  • 说明:无
  • 编号:154431

热门内容

提示:3D天堂作为服务提供者,尊重网络版权及知识产权,对某些行为的发生不具备充分的监控能力,若无意间侵犯到您的权利,请 联系我们,我们会在收到信息后尽快给予处理。

本站文章版权归本站自创作者所有,未经允许不得转载!