以下は、プロジェクトで Scene Graph を使用する場合の既知の問題です。 フィードバックがある場合、または以下のリストにない問題が見つかった場合は、フォーラムにご報告ください。
Scene Graph はベータ機能であり、予期しないクラッシュや不安定さが発生する可能性があります。
エンティティ内のライト コンポーネントにはライティングのワイヤーフレームが表示されません。 この問題を回避するには、ビューポートでエンティティを再選択して、ビジュアライザーを表示します。
プレハブ インスタンスから一度にすべてのオーバーライドをクリアできません。 オーバーライドは 1 つずつクリアする必要があります。
現時点で、エンティティではアクタあたり 1 ファイルというシステムは使用されません。代わりに UMAP アセットに保存されるため、リビジョン コントロール ワークフロー (URC および Perforce) によって副次的エフェクトが生じます。 プロジェクトで URC を使用している場合、エンティティを編集するとメイン レベルがロックされ、チームの複数のメンバーは同時にエンティティで作業できなくなります。 リビジョン コントロールに関連するその他の副次的エフェクトには次のようなものがあります:
エンティティは、アウトライナーやビューポート ステータスの強調表示に個別のリビジョン コントロール ステータスは反映されません。
エンティティのリビジョン コントロールのサブメニューは無効になっています。つまり、「元に戻す」などのエンティティ固有のアクションはできません。
送信ダイアログの変更されたファイルのリストには、エンティティ固有の情報は含まれません。
URC のスナップショット履歴情報は、指定されたスナップショット内の特定のエンティティに対する変更をキャプチャしません。
オーバーライドされたプレハブ インスタンスをプレハブ アセットに保存する方法はありません。
複製されたエンティティはプレハブ エディタで正しく名前が表示されません。
[Expand All (すべて展開)] および [Collapse All (すべて折りたたむ)] はコンポーネントで動作しません。
現時点で、プレハブからオーバーライドを削除する方法はありません。
オーバーライドのアイコンを右クリックしても、左クリックと同じ動作をするはずです。
子エンティティをその親にドラッグしても、子エンティティをデタッチできません。
スタティックメッシュ コンポーネント回転を左軸に対してスクラブ再生すると、予期しない動きが発生します。
Scene Graph オブジェクトとのコリジョンが発生したとき、プレイヤーが予期しない挙動をすることがあります。
エンティティの名前を手動で変更すると、そのエンティティ名を再度変更することはできなくなります。
スケーリングで縮小すると、回転したときに、子エンティティで異常なインタラクションが発生することがあります。
プレハブ エディタでトランスフォームの各値をドラッグすると、ウィジェットでそれらの値を変更したときよりも遅くなり、パフォーマンスが低下します。
プレハブ エディタでエンティティが常に選択可能とは限りません。
プレハブを削除すると、ライブ編集セッションで「ゴースト」プレハブが生まれます。
プレハブ アセットにはサムネイルがありません。
コンポーネント ロジックは編集モードおよびプレイ モードの両方で動作します。
コンポーネントはクリエイティブの仕掛けよりもはるかに前に初期化されます。つまり、
component.OnBeginSimulationまたはcomponent.OnSimulateからクリエイティブの仕掛けをフェッチしようとしても動作しません。 この状況に対処するには、そのコンポーネントが見つかるまでループと sleep を使用するか、クリエイティブの仕掛けのOnBegin呼び出しからプレハブをスポーンします。選択されているエンティティを非表示にする機能は、レベル エディタ (ホットキー H) およびプレハブ エディタでは動作しません。
プレハブ エディタで行われた変更は、その変更が保存されていない場合、そのプレハブの配置済みインスタンスには反映されません。
Verse コードがコンパイルされていない状態でプロジェクトを保存すると、プレハブ データが破損する可能性があります。
初めて Verse アセット ダイジェスト生成を実行すると、速度が低下する可能性があります。
レベル エディタでプレハブをコピーして貼り付けたり、複製したりすると、ベースとなるプレハブ アセットに属する子孫プレハブと子孫エンティティは、完全にオーバーライドされたと誤ってマークされます。
メッシュ、サウンド、パーティクル エフェクトのコンポーネントは、プロジェクトにインポートしたアセットやプロジェクトで作成したアセット、および一部のビルトインのメッシュ形状に対してのみ Verse で生成されます。 デフォルトでは、Scene Graph でフォートナイトや FAB のアセットを使用することはできません。
新しいメッシュやサウンドをプロジェクトにインポートしたり、新しい Particle System アセットを作成したりする場合、それを Scene Graph システムで使用する前に、プロジェクト用に Verse コードをビルドし、そのアセット用にコンポーネント クラスを生成する必要があります。
マテリアル エディタや Niagara エディタのパラメータを追加および変更する場合、それらの変更がレベル エディタに公開されるように Verse コードをビルドする必要があります。
エディタでメッシュ、サウンド、Particle System アセットの移動、名前の変更、または削除を行う場合、現在生成されているクラスではリダイレクタを利用できないため、レベル エディタで生成されたコンポーネント インスタンスへの参照が失われる可能性があります。
プロジェクト内に少なくとも 1 つのビルド可能な Verse ファイルがあり、Verse をコンパイルするまで、アセット生成コンポーネントは生成されません。
Scene Graph はリダイレクタなしでシッピングされています。 リダイレクタがない場合、アセット名を変更すると、次の 2 つのシナリオのいずれかが発生する可能性があります。
[Details (詳細)] パネルで他のオブジェクトから参照されているオブジェクトは、その参照が途切れるため、 セッティングをやり直す必要がある。
Verse コードで参照されているオブジェクトがコンパイラ エラーを引き起こし、参照を手動で更新しなければならない。
新しい LUF 座標系は既存のコンテンツとシーングラフのコンテンツに影響を与えます。 既存の Verse コードはそのまま使用できます。 ただし、同じコードを Scene Graph で使用する場合は、古い /UnrealEngine.com/Temporary/SpatialMath型から /Verse.org/SpatialMath型に変換する必要があります。 古い型と新しい型の間でトランスフォームできる、以下の変換関数が新たに用意されました。
FromVector3
FromScalarVector3
FromRotation
FromTransform
VerseTeleportLocation := (/Verse.org/SpatialMath:)vector3{Left := 330.0, Up := 20.0, Forward := 50.0} TeleportRotation := (/Verse.org/SpatialMath:)MakeRotationFromYawPitchRollDegrees(90.0, 0.0 ,0.0) if: FortCharacter := Agent.GetFortCharacter[] FortCharacter.TeleportTo[FromVector3(TeleportLocation), FromRotation(TeleportRotation)] then: Print("Character Teleported")Scene Graph を有効にすると、
Assets.digest.verseに生成されるクラスのコード生成ルールの一部が変更されます。 これは、既存の Verse のコードがコンパイルできなくなることを意味します。 そのため、プロジェクトを進める前に、Verse のコードを修正する必要があります。主な例
Verse# Assets.digest.verse MyMesh := class(mesh){} MyMaterial := MakeAsset(material, "MyMaterial.uasset") # YourVerseFile.verse SetMesh(MyMesh) SetMaterial(MyMaterial)Scene Graph の後
Verse# Assets.digest.verse MyMesh_asset := class(mesh){} MyMesh := class(mesh_component){} MyMaterial := class(material){} # YourVerseFile.verse SetMesh(MyMesh_asset) SetMaterial(MyMaterial{})tag_componentとシーン イベント システムは、どちらも徐々に改善している最中であり、まだ実験的機能という扱いとなっています。 Scene Graph コードを含む島を公開する場合は、これらの機能を使用しないでください。シミュレーション エンティティは、Scene Graph エンティティがすでにレベルに配置されていない限り、使用できません。
Verse クラスがそのメンバー変数でプレハブ クラスを参照すると問題が発生します。 その結果、エディタの起動時にエラー メッセージが表示されます。
StaticAllocateObject()から、抽象クラスのインスタンスを作成しようとしており、そのクラスがオブジェクトであることが確認できます。 このStaticAllocateObject()は、Verse クラスの $InitCDO から呼び出されます。Verse コンポーネント クラスで、エンティティのコピー アンド ペーストをしている間にデフォルト オブジェクト値のタイプを変更すると、プロパティがオーバーライドされていなくても、古いタイプのインスタンスへの参照がインポートされてしまいます。
追加されたエンティティの子でエンティティ プレハブ アセットをリロードすると、確実に
OldToNew.Value->HasAnyClassFlags(CLASS_TokenStreamAssembled)がトリガーされます。Scene Graph の編集は、1 回に 1 人だけ行うことを推奨します。
クリエイター チームの管理者権限を持つユーザーのみが、新規プロジェクト用に新しい URC リポジトリを作成できます
アイテム化
プレイヤーは、編集モードに入ると、インベントリ メニューの一部または全てのアイテムを選択できなくなります。この問題を回避するには、UEFN セッションを閉じて再起動します。
現在、NPC は新しいカスタム アイテムとインベントリを使用できません。
再マップされたキーは、一部のインベントリ入力では考慮されません。
アイテムを誤ったインベントリに配置している可能性があります。
ゲームパッド入力バインディングの一部のアイコンは、コントローラーの使用時には表示されません。
アイテム エンティティをピックアップすると、プレイヤーの移動が中断される結果となることがあります。 これを回避するには、セッションを閉じてから再起動します。
インベントリとアイテムには、UI と表現の問題がいくつかあります。