Open5

[UE5][UnrealC++]UPROPERTYメモ

ピン留めされたアイテム
Yoshikazu AzechiYoshikazu Azechi

Windows10 64bit & UE5.0.2

そもそもUPROPERTYに指定できるものはどこにあるのかというと、ObjectMacros.hにある。
何があったか忘れたりして困ったら、ここを見ると大体思い出せるはず。

Actorの派生クラスにUPROPERTYを持たせて検証。

C++コード
Yoshikazu AzechiYoshikazu Azechi

基礎となる編集/表示範囲の設定

どこで 表示したい 編集もしたい
アセットを開いて VisibleAnywhere, VisibleDefaultsOnly EditAnywhere, EditDefaultsOnly
レベルに配置して VisibleAnywhere, VisibleInstanceOnly EditAnywhere, EditInstanceOnly

エディタ

Yoshikazu AzechiYoshikazu Azechi

ブループリントで使いたいときの設定

ブループリントで 使ってほしくない 取得だけしてほしい 取得も変更もしてほしい
(なし) BlueprintReadOnly BlueprintReadWrite

Yoshikazu AzechiYoshikazu Azechi

ディレクトリやファイルのパスを指定する場合の設定

OSのダイアログを使用した指定のほかに、エディタ上でのピッカーを使用した指定ができる。
単一対象のみの設定

ディレクトリ

メタ指定子 選択方法 パス 特徴
なし OSのダイアログ 絶対パス
LongPackageName[1] エディタのピッカー パッケージ名
RelativePath OSのダイアログ Contentからの相対パス
RelativeToGameContentDir OSのダイアログ Contentフォルダからの相対パス Content以下のディレクトリ以外は指定できない
ContentDir[1:1] エディタのピッカー パッケージ名

ファイル

ファイルはすべてOSのダイアログを指定する形で、その際のフィルタやパスの内容を変えられる

メタ指定子 選択方法 パス
なし すべてのファイル(.)を対象としてファイル選択 Contentからの相対パス[2]
FilePathFilter 指定した拡張子のファイルのみを対象としてファイル選択 Contentからの相対パス[2:1]
RelativeToGameDir すべてのファイル(.)を対象としてファイル選択 .uprojectからの相対パス[3]

FilePathFilterRelativeToGameDirは組み合わせて使用できる

脚注
  1. ピッカーも同じなので違いがあんまりわからない ↩︎ ↩︎

  2. これは../../../とドライブ直下までさかのぼる ↩︎ ↩︎

  3. これはContent/から始まる ↩︎

Yoshikazu AzechiYoshikazu Azechi

範囲指定系

種類 内容 備考
FFloatInterval Min(最小値)とMax(最大値)がfloatで設定できる FVector2Dでやるくらいならこれ
FInt32Interval FFloatInterval のint32版 FIntPointでやるくらいならこれ
FFloatRange FFloatIntervalに加えて上下限のBoundsを設定できる(<, <=, >=, >[Exclusive, Inclusive]と制限なし[Open]) 細かく指定したいならこれ(設定がちょっと多い)
FInt32Range FFloatRangeのint32版 同上
FFrameNumberRange FFloatRangeのFFrameNumber版 同上

FXXXRangeはBlueprintに公開されていないものもあるのでC++ではもう少し多くの種類から選択できる