UE4 でcppを使用する

2016.05.26 | unreal engine 4

UPROPERTY 変数や関数にマクロをつけることでBPへの公開などが可能

UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Damage")
UPROPERTY(BlueprintReadOnly, VisibleAnywhere, Transient, Category = "Damage")

ブループリントで使用可能な関数

UFUNCTION(BlueprintCallable, Category = "Damage")

ブループリントでcppのイベントを取得する

UFUNCTION(BlueprintImplementableEvent, Category = "Damage")

※ヘッダに記載する。

オーバーライド可能な関数

void ACppActor::PostInitProperties()
初期値の設定などに使用する。 コンストラクタの後に適用される。


#if WITH_EDITOR
void ACppActor::PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent)
{
}
#endif

エディタ上でプロパティの変更時に実行される。

コンポーネントからのcppのイベントをBP側で受ける

DECLARE_DYNAMIC_MULTICAST_DELEGATE(FTestDelegate);
UPROPERTY(BlueprintAssignable, Category = "Test")
FTestDelegate OnTestDelegate;

OnTestDelegate.Broadcast();

動的デリゲート
https://docs.unrealengine.com/……index.html

C++ Event dispatchers: How do we implement them?
https://forums.unrealengine.co……ement-them

String Conversions: FString to FName, FString to Int32, Float to FString
https://wiki.unrealengine.com/……to_FString

参考

UE4 の C++ プログラミング入門
https://docs.unrealengine.com/……index.html

C++ プログラミングのチュートリアル
https://docs.unrealengine.com/……index.html

プラグイン
https://docs.unrealengine.com/……index.html

pagetop