-
-
Notifications
You must be signed in to change notification settings - Fork 24
ADungeonGenerateActor ja
Shun Moriya edited this page Jan 11, 2023
·
1 revision
ADungeonGenerateActor は、レベル上に置いてダンジョン生成を実行する本番用アクターです。
エディタのプレビューだけなら Window > DungeonGenerator の方が速いですが、ゲーム中に生成したい場合や、レベルに固定で置きたい場合はこちらを使います。
-
DungeonGenerateParameterを読み込んでダンジョンを生成する - 生成済みダンジョンを破棄する
- 必要に応じてミニマップやサブレベル連携を扱う
- レベルに
ADungeonGenerateActorを配置します。 -
DungeonGenerateParameterにGenerate parameterアセットを指定します。 - 必要に応じて
AutoGenerateAtStartを設定します。 - プレイ開始時または Blueprint から
GenerateDungeonを呼びます。
-
DungeonGenerateParameter
必須です。生成ルール、見た目、サブレベル、センサー設定はほぼこのアセット経由で決まります。 -
AutoGenerateAtStart
レベル開始時に自動生成するかどうかです。まずはtrueのまま確認すると分かりやすいです。 -
Dungeon Floor Slope Mesh Generation Method
床 / スロープ / キャットウォークの生成方式です。大量配置ならインスタンス系が有利です。 -
DungeonWallRoofPillarMeshGenerationMethod
壁 / 天井 / 柱の生成方式です。大量の壁や柱を使う場合はHierarchical Instanced Static Meshが有効です。 -
StartRoomSubLevelScriptActor
すでにロード済みのロビー用サブレベルを、スタート部屋として扱いたいときに使います。
-
GenerateDungeon
すでに割り当て済みのDungeonGenerateParameterを使って生成します。 -
GenerateDungeonWithParameter
呼び出し時に別のDungeonGenerateParameterを渡して生成します。 -
DestroyDungeon
生成済みダンジョンを破棄します。
ロード済みロビーをスタート部屋として使いたい場合は、StartRoomSubLevelScriptActor を利用します。
このときは次の制約があります。
-
UDungeonGenerateParameter側でMovePlayerStartToStartingPoint = falseを設定します -
UDungeonGenerateParameter側でStartLocationPolicy = NoAdjustmentを設定します -
UseMultiStartは併用できません - 候補に指定できるのは、現在ロード済みの
ADungeonSubLevelScriptActorを持つサブレベルです
ロビーを事前ロードせず、通常のサブレベル差し替えで固定スタート部屋を使いたい場合は UDungeonSubLevelDatabase.ja.md を使ってください。
使い分けは LobbyConnection.ja.md にまとめています。
- まずはエディタの
VerifyでDungeonGenerateParameterを検証してから、このアクターに割り当てると手戻りが減ります。 - 見た目だけ確認したい段階では、プラグインウィンドウでのプレビューの方が速いです。
- ミニマップやサブレベルなどを追加するのは、基本生成が安定してからにするとデバッグしやすいです。
-
UDungeonGenerateParameter.ja.md
このアクターが参照する設定アセット全体を確認できます。 -
LobbyConnection.ja.md
既存ロビーや開始部屋サブレベルと接続したい場合の専用ガイドです。
- Quick Start
- Prepare Mesh Parts
- StaticMesh Fit Tool
- ADungeonGenerateActor
- ADungeonSubLevelScriptActor
- ADungeonRoomSensorBase
- UDungeonGenerateParameter
- UDungeonMeshSetDatabase
- UDungeonInteriorDatabase
- UDungeonSubLevelDatabase
- UDungeonRoomSensorDatabase
- Generate Minimap Textures
- Apply MissionGraph
- Custom Selector Guide
- Lobby Connection Guide