UE4/5在C++中对游戏模式更改不同的设置(新手向)

蓝图中对游戏模式(GameMode)进行更改是一件很简单的事情:

选择游戏模式重载和替换下面的不同类型即可。

那么如何在c++里面替换游戏模式呢?如果我们将c++的游戏模式放到这个重载这里就会发现:

可以发现这里都是不可替换的,所以只能在c++内部替换:

来到vs中看一下这个游戏模式里面写了什么,就会发现里面竟然空空如也:

 

既然这样,我们就给它加一个构造函数:

接下来我们只需要在构造函数里面赋值即可,首先是查看一下gamemode这个父类,看看里面写了什么:

如何替换: 

//游戏状态类 记得包含头文件
	//GameStateClass = 自己创建的state类::StaticClass();
	//玩家控制器类 记得包含头文件
	//PlayerControllerClass=自己创建的玩家控制器类::StaticClass();
	//玩家状态类 记得包含头文件
	//PlayerStateClass=自己创建的玩家状态类::StaticClass();
	//HUD类 记得包含头文件
	//HUDClass=自己创建的HUD类::StaticClass();
	//pawn类
	//DefaultPawnClass=自己创建的pawn类::StaticClass();
	//观察类
	//SpectatorClass=自己创建的观察类::StaticClass();
	//这样做好了之后,编译之后在蓝图中就可以看见不同了

比如你在c++里面创建了一个ATestPawn类

那么替换就是这个样子:

DefaultPawnClass=ATestPawn::StaticClass();

 如何到蓝图中将自己的c++游戏模式重载上去之后就可以看见自己替换后的样子。

猜你喜欢

转载自blog.csdn.net/q244645787/article/details/129884465