一、设置窗口显示大小的方式
1.通过代码设置
if (GEngine)
{
UGameUserSettings* MyGameSettings = GEngine->GetGameUserSettings();
MyGameSettings->SetScreenResolution(FIntPoint(1024, 768));
MyGameSettings->SetFullscreenMode(EWindowMode::Windowed);
MyGameSettings->ApplySettings(false);
}
2.通过命令行参数设置
//以窗口形式启动游戏,窗口分辨率设为800*600:
UE4Editor.exe GamentProj.uproject -WINDOWED -ResX=1024 -ResY=768 -game
3.移动窗口位置
GEngine->GameViewport->GetWindow()->MoveWindowTo(FVector2D NewPosition);
二、如何从配置文件中读取属性
如果是要从[ProjectDirectory]/Config/DefaultGame.ini中读取Message属性的值
[/Script/ModuleName.ExampleClass]
Message=This is a test.
则在C++代码中,在class前的UCLASS中设置Config=Game,在属性前的UPROPERTY中设置Config,就可以在代码中使用此属性值了
UCLASS(Config=Game)
class AExampleClass : public AActor
{
GENERATED_UCLASS_BODY()
UPROPERTY(Config)
FString Message;
public:
void BeginPlay();
};
//---------------------------------------
void AExampleClass::BeginPlay()
{
UE_LOG(LogTemp, Log, TEXT("message=%s"), *Message);
};
参考文档
Command-Line Arguments
Configuration Files