赤兎ラボ

コーディングからバージョン管理、業務効率化までをまとめます。

GridLayoutで格子状に自動レイアウト

Unityには自動レイアウトという機能があります。

インスペクタ上で手軽にレイアウトが変更できるため、簡単にゲームを制作する場合に有効です。

元々はUI用の機能のようなので今回はUIで説明をしますが、

3Dオブジェクトであっても同じようにグリッド配置が可能です。

(ただし、X,Y軸しか対応していないため90度回転する必要がある。)

 

実装

まず Create > CreateEmpty で親となるゲームオブジェクトを作りましょう。

そしてインスペクタ上でAddComponentをクリック。

検索からGridLayoutGroupを追加します。

これをGridLayoutオブジェクトという名前とします。

f:id:RedRabbitNet:20190626075307p:plain

 

次に

このGridLayoutオブジェクトの子オブジェクトとしてオブジェクトを追加します。

 

以上です。

 

 

実装イメージ

実際にはヒエラルキには以下のようになります。

f:id:RedRabbitNet:20190626075538p:plain

 

ここまででゲーム画面は以下のようになります。

Imageの位置を全く変更していませんが、縦に並んでいるのがわかります。

f:id:RedRabbitNet:20190626075727p:plain