fc2ブログ

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

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

PREV | PAGE-SELECT | NEXT

≫ EDIT

UE5/UE4 C++で条件付き変数をプロパティ指定子(Property Specifiers)を使って指定する(UPROPERTY(meta = (EditCondition=変数名)))

C++で条件付き変数をプロパティ指定子(Property Specifiers)を使って指定する方法です。

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

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

条件付き変数を作成するには
「UPROPERTY」で「meta=(EditCondition = 変数名)」と指定することで実装することができます。
「条件となる変数の作成」と「条件によって変更できるようになる変素」の二つの変数が必要になります。

こんな感じの記述になります。

// 条件付き変数(条件となる変数)
UPROPERTY(EditAnywhere, BlueprintReadWrite)
bool bEditConditionValue;
// 条件付き変数(条件によって編集可能となる変数)
UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (EditCondition = bEditConditionValue))
int32 EditConditionValueInt;


上記の指定を行うとこんな感じで条件が真となる時のみ変数の変更が可能になります。
EditCondition000.jpg
条件となる変数「bEditConditionValue」が偽となるため、
条件付き変数「EditConditionValueInt」は編集することができません。


EditCondition002.jpg
条件となる変数「bEditConditionValue」が真になったため、
条件付き変数「EditConditionValueInt」を編集することが可能になりました。


あまりこれの使い道はぱっとは思いつかないのですが、
エディタで編集する際に、フラグと値がもしも連動している場合は
この機能を使って使うか使わないかの判断ができそうな気がするので、作業としてわかりやすくなるのかもしれません。

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

COMMENT















非公開コメント

TRACKBACK URL

http://kagring.blog.fc2.com/tb.php/740-7ef8776f

TRACKBACK

PREV | PAGE-SELECT | NEXT