1. 程式人生 > >關於unity3的中關於建立方法的總結

關於unity3的中關於建立方法的總結

  關於建立基本物體

     有些情況會使用上,物體碰撞,遊戲裡怪物和英雄的觸發事件上,建立一個簡單物體,隱藏mesh可以作為簡單的觸法器使用;多次建立預製體Prefab。

方法Instantiate (original : Object, position : Vector3rotation : Quaternion):

    克隆原始物體,位置設定在position,設定旋轉在rotation,返回的是克隆後的物體。這實際上在Unity和使用複製(ctrl+D)命令是一樣的,並移動到指定的位置。如果一個遊戲物體,元件或指令碼例項被傳入,例項將克隆整個遊戲物體層次,以及所有子物件也會被克隆。所有遊戲物體被啟用。

//例項化10個 prefab拷貝,間隔2個單位 
Public Transform prefab ;

for (int i= 0;i < 10; i++) {
	Instantiate (prefab, Vector3(i * 2.0, 0, 0), Quaternion.identity);
}

Instantiate(例項化)能克隆Object(物體)任何型別,包含script(指令碼)。

方法CreatePrimitive (type : PrimitiveType)

//在場景中建立一個平面,球體,立方體,膠囊,圓柱體
GameObject plane = GameObject.CreatePrimitive(PrimitiveType.Plane);
		GameObject cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
		cube.transform.position = new Vector3(0, 0.5F, 0);
		GameObject sphere = GameObject.CreatePrimitive(PrimitiveType.Sphere);
		sphere.transform.position = new Vector3(0, 1.5F, 0);
		GameObject capsule = GameObject.CreatePrimitive(PrimitiveType.Capsule);
		capsule.transform.position = new Vector3(2, 1, 0);
		GameObject cylinder = GameObject.CreatePrimitive(PrimitiveType.Cylinder);
		cylinder.transform.position = new Vector3(-2, 1, 0);