UE4纯C++与Slate开发沙盒游戏:2.添加Slate到界面

Joy ·
更新时间:2024-09-21
· 771 次阅读

目录

一、目的、参考:

1、UE4纯C++与Slate开发沙盒游戏:1.项目介绍与资源获取

二、视频内容:

1、解压文件、然后打开uproject文件

2、地图

3、GamePlay框架

4、SlAiCourse.Build.cs

5、GENERATE_BODY()和GENERATE_UCLASS_BODY()的区别

6、SlAiMenuGameMode.h

7、SlAiMenuGameMode.cpp

8、SlAiMenuController.h

9、SlAiMenuController.cpp

10、运行

11、Slate Widget:当做是Widget

12、创建SlateWidget的俩种方式、SlAiMenuHUD.h和SlAiMenuHUD.cpp

13、创建按钮:SSlAiMenuHUDWidget.cpp\SSlAiMenuHUDWidget.h

 

一、目的、参考: 1、UE4纯C++与Slate开发沙盒游戏:1.项目介绍与资源获取

https://blog.csdn.net/qq_40544338/article/details/105497594#8%E3%80%81UE4%E7%9A%84Gameplay%E6%A1%86%E6%9E%B6

①总结:good:介绍了写这个系列博客的目的、参考,不了解的可以查看一下

二、视频内容: 1、解压文件、然后打开uproject文件

2、地图

①在Content下面新建Map文件夹。

②在Map文件夹下面,创建地图:MenuMap

③项目设置里面修改Map

3、GamePlay框架

①创建名字为SlAiMenuGameMode的GameModeBase的C++类

 

②新建Player Controller的C++类:SlAiMenuController

 

③新建HUD的C++类:SlAiMenuHUD

 

④编辑器中设置GameMode:

4、SlAiCourse.Build.cs

①添加Slate和SlateCore的Module

5、GENERATE_BODY()和GENERATE_UCLASS_BODY()的区别

①GENERATE_BODY()和GENERATE_UCLASS_BODY()

②4.17之后就基本使用GENERATE_BODY,如果使用这个函数,少了一些构造函数的步骤

③如果使用GENERATE_UCLASS_BODY,那么构造函数就需要如图添加一些内容(可能是比较麻烦,所以4.17之后就将其不用了)

6、SlAiMenuGameMode.h

①添加构造函数

7、SlAiMenuGameMode.cpp

①StaticClass:

8、SlAiMenuController.h

①显示鼠标:

②输入模式:

9、SlAiMenuController.cpp

①显示鼠标:

②输入模式:重写一下BeginPlay

③AActor的生命周期:

 ④鼠标锁定:

10、运行

①此时GameMode里面的一些选项就自动绑定了,

 ②单独开一个窗口播放游戏,此时鼠标就被锁定在游戏里面了。

11、Slate Widget:当做是Widget

①创建C++类:SlAiMenuHUDWidget

 ②创建C++类:SlAiMenuWidget

 

 

12、创建SlateWidget的俩种方式、SlAiMenuHUD.h和SlAiMenuHUD.cpp

①创建SlateWidget的俩种方式

13、创建按钮:SSlAiMenuHUDWidget.cpp\SSlAiMenuHUDWidget.h

①中括号是UE4的重载运算符,不是数组符号,

②创建按钮:

③运行:可以看到按钮占据了整个屏幕,所以添加按钮是全屏的


作者:智勇双全的智勇



c+ ue4 沙盒游戏 沙盒 界面 ue C++

需要 登录 后方可回复, 如果你还没有账号请 注册新账号