GameObjectの基本モデルの生成をプログラミングで行おう
基本中の基本ですが、こういうのをしっかりまとめておかないといつかぼけてしまうかわかりません。それに自分もそうでしたが、こういう基礎知識を知りたいという人もUnity始めたての人は多いはずです。
GameObjectを生成してみよう
まずとりあえず空のオブジェクトを作ってみましょう。UnityのHierarchyに空のオブジェクトを別で作るか最初から存在してるオブジェクトにスクリプトを突っ込んで書いてみましょう。
void Start(){
var obj = new GameObject ();
}
こんな感じで空のオブジェクトで名前はNew GameObjectをいう名前でスタートさせると作成されたと思います。
GameObjectに名前を付けよう
生成されるオブジェクトに名前を付けてみようというだけです。
GameObject(string name);
で作る事が出来ます。
void Start(){
var obj = new GameObject ("hogehoge");
}
()の内側を"hogehoge"にしてStartしてみて下さい。
hogehogeという名前で空のオブジェクトが生成されました。名前を付けるのって簡単ですね!
基本モデルを生成してみよう
それでは基本モデルを生成していきます。基本モデルというのはCubeとかSphereやCapsuluなどのオブジェクトの事を指しています。それでは早速作っていきましょう!
void Start(){
var capsule = GameObject.CreatePrimitive(PrimitiveType.Capsule);
var cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
var cylinder = GameObject.CreatePrimitive(PrimitiveType.Cylinder);
var plane = GameObject.CreatePrimitive(PrimitiveType.Plane);
var sphere = GameObject.CreatePrimitive(PrimitiveType.Sphere);
var quad = GameObject.CreatePrimitive(PrimitiveType.Quad);
capsule.transform.Translate(2,1,0);
cube.transform.Translate(0,0.5f,0);
cylinder.transform.Translate(-2,1,0);
sphere.transform.Translate(0,2,0);
quad.transform.Translate(0,2,2);
}
それではかけたら早速プレイしてちゃんと生成されるか見てみましょう。
いいですねー!出来ました!
このようにUnityの方で準備されているプリミティブをCreatePrimitive()メソッドで生成する事が可能です。あまり実際のゲームでこうした最初から準備されたものを使う事はほぼありませんが、こうして作りだす事が出来るという事を覚えておく事と何かあった時に使えたりするものです。