ue4 C++ 覚え書き
変数定義
FVector
UnityのVector3にあたるものです。
以下のように使用します。
FVector pos= FVector(0,0,0);
FTransform
Transformの構造体です。
FTransform Transformで定義できますが、
値を入れたい場合はUKismetMathLibraryのMakeTransformを使用する必要があります。第二引数のRotatorはpitch,yaw,rollを指定してあげるため、引数は三つになります。
以下サンプルです
//includeするヘッダーファイル #include "Runtime/Engine/Class/Kismet/KismetMathLibrary" FTransform transform= UKissmetMathLibrary::MakeTransform(FVector(0,0,0),FRotater(0,0,0),FVector(0,0,0)) ;
関数
OpenLevel
//include するヘッダー #include Runtime/Engine/Classes/Kismet/GameplayStatics.h UGameplayStatics::OpenLevel(GetWorld(),"移動したいレベル名");
BPのTimerをC++で利用する
//include するヘッダー #include "Runtime/Engine/Public/TimerManager.h" #include "Runtime/Engine/Classes/Engine/World.h" auto world = GetWorld(); FTimerHandle timerHandle; //第3引数に使用にコールバックの関数を指定、第4引数に時間を指定する world->GetTimerManager().SetTimer(timerHandle,this,&AHogeHoge::Fuga,5,false); //コールバックで使用する関数の例 AHogeHoge::Fuga() { UE_LOG(LogTemp, Log, TEXT("log")); }
GameModeの取得
auto gmaeMode=(AGameMode*)GetWorld()->GetAuthGameMode();
PlayerPawnの取得
//include するヘッダー #include "Runtime/Engine/Classes/Kismet/GameplayStatics.h" //第二引数はplayerのインデックスの値、基本的には0で大丈夫 auto player=UGameplayStatic::GetPlayerPawn(this,0);
Logの出力
UnityのDebug.Log的なもの
//アウトプットログに出てきます UE_LOG(LogTemp, Log, TEXT("log"));