配列内のPrefabオブジェクトを、等間隔で生成できるように、スクリプトを作成してみましょう。
このように3つのオブジェクトが横並びに、同じ距離を取りながら、配置されます。
関連記事:
配列にある複数オブジェクトを一気に出す
foreach文を使ったくり返し処理
種類の違うPrefabをランダムで出現させる
シャッフル - 重複なしでオブジェクトを並べる
配列のオブジェクトをキー操作で切り替える
同じ距離を取りながら生成
種類の異なる3つのオブジェクトを作成します。
3つのオブジェクトを、プロジェクトビューにドラッグ&ドロップして、Prefab化します。
元データは削除しておきます。
空のオブジェクトを作成します。
ArrayScript.csを作成し、GameObject(空のオブジェクト)に追加します。
ArrayScript.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ArrayScript : MonoBehaviour { public GameObject[] myArray = new GameObject[3]; private int xPos; void Start() { foreach(GameObject item in myArray) { Instantiate(item,new Vector3(xPos, 0, 0),Quaternion.identity); xPos += 2; } } } |
MyArrayのフィールドに、3つのオブジェクトを入れます。
ゲームプレイしてみましょう。
3つのオブジェクトが、2ずつ距離を取りながら、横並びに生成されました。
関連記事:
配列にある複数オブジェクトを一気に出す
foreach文を使ったくり返し処理
種類の違うPrefabをランダムで出現させる
シャッフル - 重複なしでオブジェクトを並べる
配列のオブジェクトをキー操作で切り替える