前回は Rule Tile の 3×3 Box でルールとして設定するマークの意味について紹介しました。
今回は Rule Tile の設定項目 Output メニュー Single, Random, Animation について紹介します。
※ Unity は 2021.3.14f1、TopDown Engine は 3.1.1、2D Tilemap Extras は 2.2.2 です。
※画像では TopDown Engine のサンプルのパレット KoalaTilePalette に含まれているタイルを使用しています。
Rule Tile とは?
Rule Tile は、2D Tilemap Extras に含まれる周囲のタイルとの位置関係で表示する Sprite を動的に変える Scriptable Tile です。
ユーザがルールや Sprite をリストで設定できます。
「このマスは左上の角のマップチップを置いて」といった風に考えてタイルパレットで選択する手間が省け、タイルマップ編集の作業効率が向上します
Rule Tile は様々な機能があるので、少しずつ紹介していきます。
タイルの設定を Inspector ウィンドウで表示する場合は、 TilePalette ウィンドウで、タイルを選択後、上の灰色の余白で右クリックしてポップアップメニュー [Select Tile Asset] を選んでください。
Rule Tile の Output の 3 つの選択肢
TopDown Engine のサンプルゲーム KoalaDungeon のタイルパレットの中で同じ Rule Tile を使用しているものを探したところ、Inspector ウィンドウの設定画面が異なるものがありました。
Rule Tile 共通で、 3×3 マスの条件設定はあるのですが、 Output メニューの選択が異なると一部の設定が変わるようです。
また、サンプルのパレットにはありませんでしたが、 Output メニューには Single, Random 以外に Animation もありました。
ここからは順番にそれらの Output を選んだ際の設定と、タイルマップにタイルを配置したときの様子を紹介します。
※今回は Single と Random (こちらがメインになります) の説明を行い、 Animation は次回紹介します。
Rule Tile (Output = Single) を使ってみる
前回まで使ってきた Output の選択肢です。
Tiling Rules リストのルール枠で指定した単一の Sprite を条件に合致した場合表示します。
中心マスのマークによって、回転・反転した画像が表示されることはありますが、Sprite 自体は 1 つに限られています。
Rule Tile (Output = Random) を使ってみる
候補のリストに複数の Sprite を設定し、ルールに合致した場合、その候補のリストからランダムに Sprite がタイルに割り当てられます。
Tiling Rules リストの Output を Random に選択したルール枠の下に候補の Sprite を追加するとその中からランダムに画像が選ばれてタイルに割り当てられ表示されます。
Shuffle 項目
Output で Random を選んだ際に選択できる項目 Shuffle では、ランダムに選ばれた Sprite を、ランダムに 90 度単位の回転や水平・垂直反転させます。
これにより、 90 度回転させた画像をわざわざ用意する必要もなく、見た目のバリエーションを増やせます。
タイルを配置した後で、 Shuffle の選択肢を変更すると、すでに配置済みのタイルの表示も回転・反転をしたり、何もしない状態に切り替えることができます。
Noise 項目
前述の Shuffle を切り替えていると、同じ項目を再び選択したときのランダムな向きが同じであることがわかります
ランダムにタイルに Sprite を割り当てますが、そのパターンは決まっているようです。
そのランダムのパターンを変えられるのが Noise 項目です。
小さいとバラツキが少なく、大きいとバラツキが多くなるようです。
これにより、あまり変化が多くないほうが良い場合や、全てのタイルの Sprite が異なるくらい極端な変化をつけたい場合などでランダムな度合を調整できます。
Rule Tile で Output が Random なルールを追加
Output を Random にすると候補の Sprite をランダムに選び、回転・反転を加えたバラツキのあるタイルマップを作成できます。
さらに、異なるルールを追加すれば、複数の候補の Sprite 画像を 地形に合わせた上で Random に配置することができます。
それにより、同じ地形だけど少しずつタイルマップの画像が異なるより豊かな表現が簡単にできるでしょう。
Rule Tile は前回紹介した通り、Project ウィンドウの右クリックのポップアップメニュー [Create]→[2D]→[Tiles]→[RuleTile] でアセットを作成できます。
あとは追加したルールの Output の項目を Fixed から Random に変え、候補の Sprite を追加するだけです。
この組み合わせにより、位置関係によって四隅や中心などで最適な Sprite が選ばれ、さらに自然なばらつきを加えたタイルマップを簡単に作ることができます。
今回はここまで
今回は Rule Tile で Output を Random に設定した際の機能について紹介しました。
これと似た機能で重みづけもできる Weighted Random Tile についても以前紹介したのでよろしければそちらもご一読下さい。
- Unity の Weighted Random Tile を使ってみる | Compota-Soft-Press
- Unity の Weighted Random Tile を作ってみる | Compota-Soft-Press
次回は Output を Animation にした場合の機能を実際に作りつつ紹介します。
参照サイト Thank You!
コメント