fc2ブログ

凛(kagring)のUE5/UE4とゲーム制作と雑記ブログ

2016 年から UE4 / 2021年から UE5 を触り始めました。勉強したもののメモ用ブログです。ゲーム制作に関するメモや雑記とか色々あります。C++ での Qt、Unity もほんの少しあります。

PREV | PAGE-SELECT | NEXT

≫ EDIT

UE5/UE4 C++でブループリント(Blueprint)での変数のアクセス権限をプロパティ指定子(Property Specifiers)で指定する(UPROPERTY(BlueprintReadWrite)、UPROPERTY(BlueprintReadOnly))

C++でブループリント(Blueprint)での変数のアクセス権限をプロパティ指定子(Property Specifiers)で指定する方法です。

こちらを参考にさせていただきました。

・UE4 よく使うUPROPERTYメモ
https://qiita.com/bigengelt/items/b17545fffe7b8d69e5e8

公式ドキュメントはこちら。

・プロパティ(Properties)とプロパティ指定子(Property Specifiers)
https://docs.unrealengine.com/4.27/ja/ProgrammingAndScripting/GameplayArchitecture/Properties/

ブループリントでの変数のアクセス権限を設定するには「UPROPERTY」を使って
「BlueprintReadWrite」や「BlueprintReadOnly」を記述
します。
記述はこんな感じになります。

// Get と Set 両方公開
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "NewCategory")
bool bDebugBoolReadWrite;
// Get のみ公開
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "NewCategory")
bool bDebugBoolReadOnly;

「BlueprintReadWrite」は「Get」と「Set」両方を公開
「BlueprintReadOnly」は「Get」のみを公開となります。

結果はこんな感じになります。
まずは「Get」についてみてみます。
※「Get Debug Bool Read Only」と「Get Debug Bool Read Write」
プロパティ指定子008
「BlueprintReadWrite」と「BlueprintReadOnly」は両方とも「Get」は公開されているため一覧に存在します。

次に「Set」についてみてみます。
※「Set Debug Bool Read Only」と「Set Debug Bool Read Write」
プロパティ指定子002
「BlueprintReadWrite」は「Set」が公開されているため一覧に存在します。
「BlueprintReadOnly」は「Set」が公開されていないため一覧には存在しなくなっています。

こんな感じで変更をしてほしくない変数などは制御できるので、
予期せぬことが起きないようにするためにも、ちゃんと設定はしておきたいところです。

| UE5 | 10:00 | comments:0 | trackbacks:0 | TOP↑

COMMENT















非公開コメント

TRACKBACK URL

http://kagring.blog.fc2.com/tb.php/694-20d099ee

TRACKBACK

PREV | PAGE-SELECT | NEXT