虚拟现实-VR-UE4-编辑自定义Character-上下左右移动-旋转

网友投稿 946 2022-05-28

在上一片文章中,我创建了一个自定义的Character,但是只是有一行log显示,我使用了自己的Character,不能有任何操作,这里,我将记录我修改我的Character的过程

万事第一步,打开工程,哈哈哈。

第一步,添加矩形的移动罗技,就是要定义键盘的按键,打开虚幻引擎,进行键盘按键定义。

打开项目设置,进入项目设置界面

找到输入

我将准备实现ASDW见的移动,和鼠标的上下左右移动

按照下图来设置就OK

在如上图设计后,我们就需要回到编译器去撸代码了。走起

代码撸了一部分后,编译

着几行代码实现了asdw按键的控制角色的移动

核心代码,这里的算法我也怎么大量了解,大致意思就是从矩阵获得移动向量,在调用UE4系统函数移动角色

现在我的角色可以移动了,但是还是不可以旋转的,现在我需要添加鼠标时间,来使我的角色可以旋转。

还是和扇面操作差不多,编辑-->项目设置-->input

好,这时新增部分

转移到编译器中,添加旋转函数和上下看函数

新增函数

虚拟现实-VR-UE4-编辑自定义Character-上下左右移动-旋转

绑定函数

这里的实现功能,我们可以在APawn类中看到,

这里我要准备走捷径了,哈哈哈

看起奇迹

这里就可以了了了

编译

okkkkk

那么,有大多人不屑于走捷径,喜欢自己吗代码,可以借鉴这里的实现

直接在这里搜索函数就可

这里就是实际函数的实现了,可以直接复制过去的哦

void APawn::AddControllerPitchInput(float Val)

{

if (Val != 0.f && Controller && Controller->IsLocalPlayerController())

{

APlayerController* const PC = CastChecked(Controller);

PC->AddPitchInput(Val);

}

}

void APawn::AddControllerYawInput(float Val)

{

if (Val != 0.f && Controller && Controller->IsLocalPlayerController())

{

APlayerController* const PC = CastChecked(Controller);

PC->AddYawInput(Val);

}

}

现在我就可以控制我自定义的角色来移动和旋转了了

TIP

在使用绑定函数的时候,提示我们需要传入函数指针,也就是需要在在函数前面加&

这里附上一个连接 https://answers.unrealengine.com/questions/200444/input-bindaxis-c.html,可以参考

虚拟化

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:markdown中 段首缩进、增加空行
下一篇:将本地项目上传到码云或者GitHub上
相关文章