这部分主要是调用在C++中用代码实现在游戏界面上面输出一行文字
第一步,新建C++版本的工程文件,在4.12版本以后,在创建后,都会自动打开Vs编译器。
如下图
在VS中点击编译,等带编译,第一次等待时间较长,具体时间更具具体及其配置而定
第一次编译完成后,就证明我门的工程是正确的,这样子在后期编译不通过的时候可以排除是项目工程建立的时候出错的
项目完成后,可以设置一下程序启动地图
选择 编辑 项目设置 地图模式,设置默认的地图
这回,程序每次运行,就会默认启动我们的地图了
创建一个新的GameModel类
如下图
在创建完成后,程序会自动打开VS编译器,并且默认打开.H文件和.CPP文件
大家回看到一些默认生成的文件
#pragma once #include "GameFramework/GameMode.h" #include "MyGameMode.generated.h" /** * */ UCLASS() class M_C_TEST1_API AMyGameMode : public AGameMode { GENERATED_BODY() };
UCLASS()
GENERATED_BODY()
这些代码都是UE4 自己独有,在我们编译的时候,UE4会识别这些文件
关闭UE4后,再次编译程序
要注意下现在项目的大小
这时候我们要选择我们自己新建的game model来控制游戏
在.H文件中添加函数声明
virtual void BeginPlay() override;
在.cpp中实现
void AMyGameMode::BeginPlay()
{
if (GEngine)
{
GEngine->AddOnScreenDebugMessage(-1, 8.f, FColor::Red, TEXT("Hello word"));
}
}
理论上,运行游戏就可以了,但是我失败了,
下面我将加载一个内置的demo来查看一下
补上昨天的测试结果
具体原因呢,我在昨天编译的时候和,是VS编译器和UE都同时开着,在编译的时候,就没有通过,不过这我都是在编辑VS的时候,把uE关掉的,现在可以顺利编译通过,
可能是我编译器编译UE的时候编译的有问题,导致我从编译器F5 调试的时候,总是报好多中断错误,每次冲洗能打开就没有问题,等有时间在重新编译一下试试。