【初心者Unity】Primitiveなゲームオブジェクトをスクリプトから生成する方法
▶
【Unity】3Dアクションゲームを作ろう!#7 ステージの作成(Skybox・落下判定)
▶
【Unity】3Dアクションゲームを作ろう!#8 ステージの作成(スイッチ・扉)
▶
【Unity】3Dアクションゲームを作ろう!#9 プレイヤーのHP管理
▶
【初心者Unity】JsonUtilityクラスでJSONを扱う方法
▶
【初心者Unity】スクリプトからコンポーネントを追加する方法
CreatePrimitiveの使い方
CreatePrimitiveはCubeやPlaneなど、あらかじめ用意されている基本形のゲームオブジェクトを生成するメソッドです。
Instantiateと似ていますが、こちらは元となるゲームオブジェクトを用意する必要がありません。
(参考)
Instantiateを具体例付きで解説
Cubeを生成する
・第1引数にPrimitiveType.Cubeを指定
GameObject cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
このメソッドは生成する機能しかないため、親のオブジェクトを指定したりはできません。
生成されたオブジェクトはヒエラルキーのトップ(ルート階層)に配置されます。
全部で6種類
引数で指定できるPrimitiveTypeは全部で6種類です。
GameObject sphere = GameObject.CreatePrimitive(PrimitiveType.Sphere); GameObject capsule = GameObject.CreatePrimitive(PrimitiveType.Capsule); GameObject cylinder = GameObject.CreatePrimitive(PrimitiveType.Cylinder); GameObject cube = GameObject.CreatePrimitive(PrimitiveType.Cube); GameObject plane = GameObject.CreatePrimitive(PrimitiveType.Plane); GameObject quad = GameObject.CreatePrimitive(PrimitiveType.Quad);
引数ではPrimitiveTypeを指定するしかなく、あらかじめ用意されている値しか渡せません。
PrimitiveTypeについて
PrimitiveTypeはEnum(列挙型)です。
生成対象のゲームオブジェクトに数値が割り当てられていて、それらを名前で指定して呼び出すことができます。
Enumの詳しい解説や使い方についてはこちらの記事でも紹介しています。
(参考)Enumを使ってゲーム中の状態や条件をわかりやすく管理しよう
まとめ
以上CreatePrimitiveメソッドの使い方について紹介しました。
使用頻度は少ないかもしれませんが、検証などの用途には適していると思います。