Unity事例ノート

UNITY

2つの位置が重ならずにランダム生成

2つのオブジェクトをランダムで生成するとき、座標が重ならないようにできる仕組みを作ってみましょう。

クリックすればCubeとSphereが横方向(X軸)にランダム出現しますが、X座標が重複することはありません。

座標が重複せずにランダム生成

SphereとCubeを作成し、それぞれリジッドボディを追加。

SphereとCubeをプロジェクトビューにドラッグ&ドロップし、プレハブ化します。

SphereとCubeの元データは、削除します。

空のオブジェクトを作成します。

RandomScript.csを作成し、GameObject(空のオブジェクト)に追加します。

RandomScript.csを記述します。

キューブとスフィア、それぞれのフィールドに、プレハブを入れます。

ゲームプレイして、画面をクリックしましょう。

横位置はランダムで生成されますが、2つのオブジェクトが重なることはありません。

Sphereが出現する位置を、spherePosとし、-3から3の範囲でランダム生成。

その後、CubeClone()を実行。

Cubeが出現する位置をcubePosとしてランダムにしますが、spherePosと同じ数字が出た場合は、再度CubeClone()を実行させます。

これにより、2つの座標が重複することはありません。

SCHOOL教室案内