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

问题

        我们都知道如何使用蓝图创建一个游戏模式并且在这个游戏模式蓝图中去设置“默认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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/580644.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何用二维码实现现代仓库管理?

随着科技的进步,二维码技术逐渐应用与各个领域,其中在仓库管理中的应用也日益广泛。 那话不多说,我们直接来看如何用二维码实现现代仓库管理 简道云仓库管理模板,可以点击安装配合阅读:https://www.jiandaoyun.com 二…

Oracle集群ORA-03113:end-of-file on communication channel

一、问题场景描述 今天Oracle集群要更新各数据库的数据,折腾的启动不了了: --》数据量比较大,数据泵方式导出的dmp文件 准备导入集群 --》由于之前的生产数据库数据比较少,需要增大表空间。 --》于是在sqlplus命令窗口&#xff0c…

暗区突围端游海外版|暗区突围免费加速器有吗 免费加速器推荐

游戏中玩家可以创建男性或女性角色,可以通过选择脸型、发型、发色对人物形象进行调整;在进入游戏后,除人物性别不能修改,脸型、发型、发色都可以进行调整。除此之外可以在衣橱中对角色的上衣、手套、裤子、鞋子、帽子进行更换。游…

Leetcode—1017. 负二进制转换【中等】(string列表初始化、反向迭代器)

2024每日刷题(120) Leetcode—1017. 负二进制转换 实现代码 class Solution { public:string baseNeg2(int n) {string ans;while(n ! 0) {ans to_string(n & 1);n -(n >> 1);}return ans.empty() ? "0": string{ans.rbegin(),…

R语言详解二

一&#xff0c;列表详解 创建一个列表 > myList<-list(id2,name"张三",age20) > myList $id [1] 2$name [1] "张三"$age [1] 20 获取第一个元素 > myList[[2]] [1] "张三" 获取第一个子列表 > myList[2] $name [1] "张…

百度 测试|测试开发 面试真题|面经 汇总

百度测开 开发测试工程师 提前批一二三面面经 事业群&#xff1a;MEG base&#xff1a;北京 一面&#xff1a;2023.8.12 时长&#xff1a;50min 自我介绍 个人项目&#xff0c;我的项目是围绕着学校课程的项目来的&#xff0c;面试官就让我介绍这门课讲了些什么 &#xff…

信息化项目总体计划书(Word)

项目开发计划包括项目描述、项目组织、成本预算、人力资源估算、设备资源计划、沟通计划、采购计划、风险计划、项目过程定义及项目的进度安排和里程碑、质量计划、数据管理计划、度量和分析计划、监控计划和培训计划等。 软件全套精华资料包清单部分文件列表&#xff1a; 工作…

03-JAVA设计模式-模板方法模式

模板方法模式 什么是模板方法 模板方法模式&#xff08;Template Method Pattern&#xff09;在Java中是一种行为型设计模式&#xff0c;它定义了一个操作中的算法骨架&#xff0c;而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某…

7-34 通讯录的录入与显示

题目链接&#xff1a;7-34 通讯录的录入与显示 一. 题目 1. 题目 2. 输入输出格式 3. 输入输出样例 4. 限制 二、代码 1. 代码实现 #include <iostream> using namespace std;// 单条记录的信息 class infoContext { private:char name[11];char date[11];char man;c…

七、OSPF特殊区域及其特性

目录 OSPF区域分类 hello报文中option字段 1.末节区域&#xff08;Stub区域&#xff09; 2.完全末节区域&#xff08;Toally Stub区域&#xff09; 3.七类LSA 4.非完全末节区域&#xff08;NSSA区域&#xff09; 5.完全非完全末节区域&#xff08;Toally NSSA区域&#…

计算机服务器中了helper勒索病毒怎么办,helper勒索病毒解密流程工具

在网络技术飞速发展的今天&#xff0c;越来越多的企业离不开网络&#xff0c;网络可以为企业带来更高的生产效率&#xff0c;提供更多的便捷服务&#xff0c;但网络是一把双刃剑&#xff0c;在为人们提供便利的同时&#xff0c;也为企业的数据安全带来严重威胁。近日&#xff0…

微服务架构与SOA架构

SOA架构和微服务架构的区别 SOA关注的是服务重用&#xff0c;微服务在关注服务重用的同时&#xff0c;也同时关注快速交付&#xff1b; 微服务架构 80%的SOA服务架构思想 100%的组件化架构思想 80%的领域建模思想 首先SOA和微服务架构一个层面的东西&#xff0c;而对于ESB和…

Python_AI库 Numpy常用的统计函数介绍

Python_AI库 Numpy常用的统计函数介绍 本文默认读者具备以下技能&#xff1a; 熟悉python基础知识&#xff0c;vscode或其它编辑工具 熟悉表格文件的基本操作 具备基本的高等数学常识,能看得懂矩阵运算 具备自主扩展学习能力 本文涉及的函数主要包含&#xff1a; np.sum(arr…

自动化爬虫工具:you-get安装与使用

Windows下的安装命令&#xff1a; pip install you-get linux下的安装命令&#xff1a; pip3 install you-get 下载完成后&#xff0c;我们可以看到如下的警告&#xff0c;意思就是这个工具并未被添加到环境变量中&#xff0c;如果我们想在命令行中直接调用&#xff0c;需要…

人机介面、工业自动化、工业控制、机器人、充电站、智能家庭、可编程逻辑控制器 ( PLC ) 、远程终端单元 ( RTU )

影像输入支持 CCIR656 / CCIR601 输入接口最高分辨率&#xff1a;3 百万像素•双 SD Host 介面-支持 SD / SDIO / eMMC•模拟数字转换器 ( ADC )-支持 12-bit 8 通道-800 k 采样率 ( SPS )-支持四线或五线式电阻式触摸板•周边-支持 SPI / IC / PWM / CAN / ISO-7816

【推荐】程序员的免费羊毛!!!

还剩下最后两天了&#xff0c;最后这两天抽奖命中率特别高&#xff0c;基本中奖99.99% 有大量日历、数码电子产品。 点击链接参与「通义灵码 体验 AI 编码&#xff0c;开 AI 盲盒」 https://developer.aliyun.com/topic/lingma/activities/202403?taskCode14508&recor…

振弦采集仪在岩土工程监测中的误差分析及提高措施探讨振弦

振弦采集仪在岩土工程监测中的误差分析及提高措施探讨 振弦采集仪是岩土工程监测中常用的一种测量设备&#xff0c;广泛应用于地基沉降、岩土体固结、地下水位变化等监测工作中。然而&#xff0c;在实际应用中&#xff0c;振弦采集仪可能存在一些误差&#xff0c;影响监测结果…

Linux动态追踪——eBPF

目录 摘要 1 什么是 eBPF 2 eBPF 支持的功能 3 BCC 4 编写脚本 5 总结 6 附 摘要 ftrace 和 perf 与 ebpf 同为 linux 内核提供的动态追踪工具&#xff0c;其中 ftrace 侧重于事件跟踪和内核行为的实时分析&#xff0c;perf 更侧重于性能分析和事件统计&#xff0c;与…

unit4.web服务的部署及高级优化方案

搭建web服务器要求如下&#xff1a; 1.web服务器的主机ip&#xff1a;172.25.254.100 [rootserver101 桌面]# vmset.sh 100 连接已成功激活&#xff08;D-Bus 活动路径&#xff1a;/org/freedesktop/NetworkManager/ActiveConnection/3&#xff09; [rootserver101 桌面]# ifc…

jsp servlet 学生信息管理系统

一、角色划分 1、超级管理员 2、学生 二、模块展示 1、登录 2、列表页面【超级管理员展示所有用户信息、学生只展示当前登录用户信息】 3、新增 4、编辑 三、数据库【mysql】 四、运行演示 jsp servlet 学生信息管理系统