【UE C++】设置游戏模式

devtools/2024/9/24 21:25:02/

问题

        我们都知道如何使用蓝图创建一个游戏模式并且在这个游戏模式蓝图中去设置“默认pawn类”、“HUD类”、“玩家控制器类”、“游戏状态类”、“玩家状态类”、“旁观者类”。那么如何使用C++完成该操作呢?

步骤

1. 首先创建“GameMode”、“GameState”、“HUD”、“Pawn”、“PlayerController”、“PlayerState”C++类 

 2. 在GameMode的头文件中添加“GameState”、“HUD”、“Pawn”、“PlayerController”、“PlayerState”的头文件,这样我们就能在GameMode中拿到这些类的StaticClass

添加一个构造函数

#pragma once#include "CoreMinimal.h"
#include "MyGameState.h"
#include "MyHUD.h"
#include "MyPawn.h"
#include "MyPlayerController.h"
#include "MyPlayerState.h"
#include "GameFramework/GameMode.h"
#include "MyGameMode.generated.h"/*** */
UCLASS()
class TESTPROJECT_API AMyGameMode : public AGameMode
{GENERATED_BODY()AMyGameMode();};

3. 在GameMode的源文件中实现构造函数,即设置游戏模式默认使用的pawn类、HUD类、玩家控制器类、游戏状态类、玩家状态类和旁观者类。

#include "MyGameMode.h"
AMyGameMode::AMyGameMode() {DefaultPawnClass = AMyPawn::StaticClass();PlayerControllerClass = AMyPlayerController::StaticClass();GameStateClass = AMyGameState::StaticClass();PlayerStateClass = AMyPlayerState::StaticClass();HUDClass = AMyHUD::StaticClass();
}

4. 编译成功后,我们可以在UE编辑器中的世界场景设置中设置游戏模式重载为我们创建的那个GameMode类,此时可以看到游戏模式中的pawn类、HUD类、玩家控制器类、游戏状态类、玩家状态类和旁观者类已经被设置好了。

参考视频:

https://www.bilibili.com/video/BV1Dc411f7nx?p=6&spm_id_from=pageDriver&vd_source=36a3e35639c44bb339f59760641390a8


http://www.ppmy.cn/devtools/21614.html

相关文章

商汤研究院招大模型实习生

商汤研究院招大模型实习生,base上海、北京,400/day。福利:每天50租房补贴,20的餐补。晚上8点之后回去有额外的25元晚餐餐补,10点之后回去可以免费用滴滴。 组内的大模型工作大概分两个方向: 1.3B、3B等小…

【Jenkins】持续集成与交付 (五):Jenkins用户权限管理

【Jenkins】持续集成与交付 (五):Jenkins用户权限管理 1、安装插件(Role-based Authorization Strategy)2、开启权限全局安全配置3、创建角色4、创建用户5、给用户分配角色6、测试权限💖The Begin💖点点关注,收藏不迷路💖 1、安装插件(Role-based Authorization Stra…

Promise面试题

promise与 fetch、async/await_fetch async 获取结束标志-CSDN博客 手写promise A、catch、finally、all、allsettled、any、race-CSDN博客 【建议星星】要就来45道Promise面试题一次爽到底(1.1w字用心整理) - 掘金 目录 每隔1秒输出1,2,3 红黄绿灯交替亮 按序执行数组 …

纯血鸿蒙APP实战开发——预渲染实现Web页面瞬开效果

介绍 为了便于大家在使用本案例集时能够更详细的了解各个案例,本案例基于Web预渲染实现了案例介绍功能,即应用右下角的问号icon。 效果图预览 使用说明 因为直接加载的线上README,因此本功能需联网使用点击icon,即会弹出对应案…

ffmpeg的安装以及使用

1.FFmpeg 的主要功能和特性: 格式转换:FFmpeg 可以将一个媒体文件从一种格式转换为另一种格式,支持几乎所有常见的音频和视频格式,包括 MP4、AVI、MKV、MOV、FLV、MP3、AAC 等。视频处理:FFmpeg 可以进行视频编码、解…

设计模式(五):建造者模式

设计模式(五):建造者模式 1. 建造者模式的介绍2. 建造者模式的类图3. 建造者模式的实现3.1 创建食物接口3.2 创建包装接口3.3 创建具体包装3.4 创建具体食物3.5 创建Meal类3.6 创建MealBuilder类3.7 演示建造者模式 1. 建造者模式的介绍 建造…

ROS机器人小车建模仿真

ROS机器人小车建模仿真 引言: ​ 在机器人技术的迅速发展中,仿真技术已成为研究和教育领域的重要工具。通过仿真,我们可以在虚拟环境中测试和验证机器人的设计和行为,无需承担高昂的成本和潜在的风险。本实验从零开始,…

(二)小程序学习笔记——初识:标签、数据绑定、指令介绍

1、rpx:是微信小程序的自适应的单位,根据不同设备的屏幕宽度进行自适应缩放。 2、小程序规定任何型号的手机的屏幕宽度都为 750rpx。 3、小程序中常用的组件:view、swiper(滑块视图容器—轮播图的盒子)和swipe-item&…