Unity5 メモ18
今回でUnityメモシリーズはいったんお休みになるかもしれません。
プレイヤーを追従するカメラ
プレイヤーのGameObjectの子オブジェクトにメインカメラを置く。uGUIのOnClick()に適用可能な関数
戻り値はvoidで、引数を1つまでとることができる。
複数の引数を持たせたいときは、MonoBehaviourを継承したクラスに複数のフィールドを持たせ、そのクラスを引数にする。ラグドール
3Dモデルに適用させるオプションのようなもので、これを適用すると3Dモデルの体の各パーツに物理演算が働き、
立っている状態から適用すると、全身が崩れ落ちるような動作が得られる。
Create > 3D Object > Ragdoll... で設定できるOcclusion Culling
カメラから見えないオブジェクトを、その面単位で描画を省略する処理。
例えば、都会のビル群のシーンでは視界に入る数百以上の建物で数千以上の面が存在するが、
カメラから見えている面は数十程度であることが多く、それだけを描画すれば見た目は同じになる。
一方Frustum Cullingは、視界に入っていないオブジェクトを、オブジェクト単位で描画を省略するもので、
陰に隠れるなど、カメラから見えていなくてもカメラの視界の中(Near Clip PlaneとFar Clip Planeの間)にあれば全体が描画されてしまい、高速化のメリットは劣る。プロファイラ
ゲーム起動中にWindow > Profilerを起動すると、ゲームのパフォーマンスチェックができるカメラとシーンの視界を一致
GameObject > Align With Viewを選択すると、Sceneビューで今見ている視点にGameのカメラが変更される。
GameObject > Align View to Selectedを選択すると、Gameビューで見ている視点にSceneビューの視点が変更される。生成したオブジェクトのマテリアルを変更する
obj.GetComponent<Renderer>().sharedMaterial = yourMaterial;
あるオブジェクトの子オブジェクトに対してループを回す
foreach(Transform child in transform){ Something(child.gameObject); } /// or Transform[] allChildren = GetComponentsInChildren<Transform>(); foreach (Transform child in allChildren) { // do whatever with child transform here }