本文为B站系列教学视频 《UE5_C++多人TPS完整教程》 —— 《P30 Blaster 角色(Blaster Character)》 的学习笔记,该系列教学视频为 Udemy 课程 《Unreal Engine 5 C++ Multiplayer Shooter》 的中文字幕翻译版,UP主(也是译者)为 游戏引擎能吃么。
文章目录
- P30 Blaster 角色(Blaster Character)
- 30.1 创建 “角色” C++ 类以及蓝图类
- 30.2 Summary
P30 Blaster 角色(Blaster Character)
本节课将在项目 “Blaster
” 创建我们的第三人称射击游戏角色类。
30.1 创建 “角色” C++ 类以及蓝图类
-
在虚幻引擎中打开项目 “
Blaster
”,然后在内容浏览器中单击鼠标右键,新建 “角色”(Character)C++ 类,命名为 “BlasterCharacter
”,保存到新建的 “Character
” 目录下。
-
点击 “创建类” 按钮后出现实时编译错误,解决方法是在 VS 中打开 “
BlasterCharacter.cpp
”,删去添加头文件的代码行 “#include "Character/BlasterCharacter.h"
” 中的 “Character\
”,可以看到报错全部消失了。
-
这里笔者使用快捷键 Ctrl+Alt+F11 进行实时编译,也可以关闭虚幻引擎窗口后进行离线编译(离线编译与实时编译的区别详见 《UE5_C++多人TPS完整教程》学习笔记4 ——《P5 局域网连接(LAN Connection)》。编译完成后,可以在 “
Character
” 目录下看到 C++ “角色” 类 “BlasterCharacter
”。
-
创建基于 “
BlasterCharacter
” 的 “蓝图”(BluePrint)类 “BP_BlasterCharacter
”,保存在目录 “/Content/Blueprints/Character/
”
-
双击 “
BP_BlasterCharacter
” 打开蓝图编辑窗口,首先在左侧 “组件”(Components)面板选择 “网格体 (CharacterMesh0) (骨骼网格体组件)”,然后在右侧 “细节” 面板下找到 “网格体”(Mesh)选项卡,修改 “骨骼网格体”(Skeletal Mesh)为 “SK_EpicCharacter
”。
-
将 “网格体 (CharacterMesh0) (骨骼网格体组件)” 旋转 90° 至其正面方向与 “箭头组件 (Arrow)” 所指的方向一致,并在右侧 “细节” 面板 “变换” 选项卡中将 “位置 Z”(Location Z)改为 -88,使得 “胶囊体组件 (CollisionCylinder)” 能完全包裹 “网格体 (CharacterMesh0) (骨骼网格体组件)”。最后编译、保存即可。
30.2 Summary
本节课创建了一个 “角色” C++ 类,并基于此创建了一个蓝图类。