UE4、#IF DEBUGもどきマクロの作り方
色々やっているとShippingバージョンではやってほしくないノードとかが出てくる、C++の#IF DEBUGはDEBUGバージョンだけ指定コードをコンパイルしてくれる機能で、これと似たようなマクロがあったら便利
今回できるものは本家と違ってBPから除外するわけではないので、実際に処理が軽くなるみたいなのは薄いけど、見た目がわかりやすくなって良い
Configのビルド設定取得する
ビルド設定はDefaultGame.iniに書かれていて、C++でこれを取得する関数を用意すると今のビルド設定が見れる
DefaultGame.iniの
[/Script/UnrealEd.ProjectPackagingSettings] BuildConfiguration=PPBC_Development
これがビルド設定の部分、エディタのビルド設定は "Debug", "Development", "Shipping" があり、これに対応するのは
"PPBC_DebugGame", "PPBC_Development", "PPBC_Shipping" となる(確認したのはwindowsなのでOSXとかなら変わるかも)
この設定を見る関数をFunctionLibrary辺りに作る
.h UFUNCTION(BlueprintCallable, BlueprintPure, Category = "Configuration") static void GetBuildConfiguration(FString& Type); .cpp void UBlueprintFunctionLibraryCpp1::GetBuildConfiguration(FString& Type) { GConfig->GetString( TEXT("/Script/UnrealEd.ProjectPackagingSettings"), TEXT("BuildConfiguration"), Type, GGameIni ); }