画像サイズは4の倍数になるようにしてください (半端なサイズの場合は右下に余白を入れる)
1つの画像に収めるドアは全て同じサイズになるようにしてください
ドア素材は横並びで左に閉った画像、右に全開の画像となるように配置してください
開閉アニメーションのフレーム数に制限はありません
描画するものが無いフレームは素材内に含める必要はありません
なるべく512x512ピクセル以下になるように作るのが望ましいです
また、1つのマップ内で使用される画像の枚数が少ない方が処理負荷が軽くなります
用意した素材画像を Assets/AssetBundles/Maps/Door/Sprites フォルダにドラッグ&ドロップしてください
次に、追加した画像を選択してインスペクターから以下の項目を設定してください
設定が完了したら『Apply』ボタンを押して変更を確定してください
TextureType | Sprite (2D and UI) |
---|---|
SpriteMode | Multiple |
PixcelsPerUnit | 32 |
GeneratePhysicsShape | Off |
FilterMode | Point (no filter) |
Compression | HighQuarity |
次に『SpriteEditor』ボタンを押してスプライト編集画面を開いてください
編集画面よりメニューバーの『Slice』をクリックして以下の項目を設定してください
値を設定したら左下の『Slice』ボタンをクリックしてください
※ 画像に余白を入れている場合は Type を GridByCellSize にしてサイズ指定を使用してください
Type | Grid By Cell Count |
---|---|
Column & Row | 水平個数と垂直個数 |
Pivot | Bottom Center |
分割された各ドアをクリックしてスプライトに適切な名前を設定してください (半角英数字を使用)
※ この作業は省略してもOKです
全ての設定が終ったら左上の『Apply』ボタンをクリックしてください
ドアは「ポータルドア」と「スルードア」の2種類があります
ポータルドア: | 他の座標、又は、他のマップへワープさせるドア (非貫通ドア) |
スルードア: | ドアの反対側へ移動するドア (貫通ドア) |
Assets/AssetBundles/Maps/Door フォルダ内にある以下のファイルをコピーしてください
複製ショートカット Ctrl + Dキーを使うと便利です
ポータルドアを作る場合: | #PortalDoorTemplate |
スルードアを作る場合: | #ThroughDoorTemplate |
マップシーン内の RpgMap/Doors オブジェクトの子になるようにドアプレハブをドラッグ&ドロップで追加してください
追加したオブジェクトを分かりやすい名前にリネームしてください
移動ツールで設置したい場所に移動させてください
スルードアの場合は以上で完了です
ポータルドアの場合は下の『ワープポイントの作成』と『ワープ先の設定』を行ってください
マップシーン内の RpgMap/WarpPoints オブジェクトのを右クリックし、メニューから『Create Empty』を選択してください
新しく作成されたオブジェクトの名前をワープポイント名にリネームしてください (半角英数字)
インスペクターから『Add Component』ボタンをクリックしてください
検索ウィンドウに「RpgMapWarpPoint」と入力して RpgMapWarpPoint コンポーネントを選択してください
移動ツールを使ってワープ先に指定する場所へオブジェクトを移動させてください
![]() |
![]() |
ポータルドア オブジェクトを選択してインスペクターから以下の項目を設定してください
MapSceneName | ワープ先のマップシーン名。同じマップ内での移動の場合は空のままにしてください |
---|---|
WarpPointName |
ワープポイント名 (『ワープポイントの作成』の項で作成したワープポイントのオブジェクト名) MapSceneName にシーン名を入力している場合はこの項目を空にすることができます この項目を空にした場合は初期位置にワープします |
※ 使用頻度は少ないと思うので簡易的な説明のみ記載します。必要になったときはエンジニアに使用法の詳細をご確認ください
2タイル以上の幅の広いドアを作るには入退室イベントを追加します
入退室イベントはそれぞれ以下のコンポーネントを使用します
入室イベント: | RpgMapDoorEnter コンポーネント |
退室イベント: | RpgMapDoorExit コンポーネント |
入退室イベントタイルの追加するには以下の手順で行います
ドア オブジェクトの子に空のオブジェクトを追加します
追加したオブジェクト入室イベントの場合は RpgMapDoorEnter コンポーネント、退室イベントの場合は RpgMapDoorExit コンポーネントを追加してください
移動ツールで設置したい場所にオブジェクトを移動させてください
インスペクターから追加したコンポーネントの Door プロパティにドア コンポーネント持つオブジェクトをドラッグ&ドロップで設定してください
必要に応じて OverrideParam プロパティと OverrideParamMask プロパティを調整してください