Site cover image
ゲーム開発に関すること

UE5:WITH_EDITOR と WITH_EDITORONLY_DATA

たとえば、MyProject に Item クラスがあり、このクラスがエディターに表示されるときに、デザイナーからのメモを含むいくつかの追加フィールドを表示したいとします。
それが WITH_EDITORONLY_DATA の目的です。これにより、エディター全体を含めたり、MyProjectEditor モジュールでクラスを再定義したりすることなく、フィールドを追加/非表示にすることができます。
よく分かりませんが、私が見た限りでは、WITH_EDITOR はコードに使用され、WITH_EDITORONLY_DATA はデータ、つまりクラス プロパティなどに使用されます。
WITH_EDITORONLY_DATA のみのブロック内のクラスでプロパティを宣言すると、クッカーはそれを検出してクックしません。ただし、Serialize 関数をオーバーライドした場合は、シリアル化を自分で行うことになります。
以下のように使い分けられているケースが多い。
・UPROPERTY指定されたメンバ変数は#if WITH_EDITORONLY_DATA で囲む。
・上記のメンバ変数を利用するコード(関数)も同じく#if WITH_EDITORONLY_DATA で囲む。
・それ以外は#if WITH_EDITOR で囲む。
データ用、コード用とは一概に言えない。

Thank you!
Thank you!
URLをコピーしました

コメントを送る

コメントはブログオーナーのみ閲覧できます