Unity3D學習筆記(二)Unity的JavaScript基礎

Update()每幀調用一次
LateUpdate()在Update()後執行
Awake()系統執行的第一個方法
Start()在Awake()之後,Update()之前
FixedUpdate()固定更新,可在Edit->Project Settings->Time中更改刷新頻率
OnDestroy()腳本銷燬時調用
OnGUI()每幀調用,專門用來繪製界面

創建對象 var obj = GameObject.CreatePrimitive(PrimitiveType.cube);
獲取對象 GameObjcet.Find(obj);
對於子物體 Find內寫路徑obj1/obj2/...
標籤獲取對象 GameObject.FindWithTag(<tag name>);
更改組件 obj.AddComponent();
    注:組件也可以是腳本,不必指明路經,系統自動尋找。
更改顏色 obj.renderer.material.color = Color.blue;
設置座標 obj.transform.position = Vector3(x,y,z);
更改材質 render.material.mainTexture = texture(Texture類型);
腳本通信
    向自己發gameObject.SendMessage(<Function method name>,parameters);
    向子類發BroadcastMessage 向父類發SendMessageUpwards
    通過更換gameObject,可以實現向其他腳本發消息。
克隆/實例化 Instantiate
var clone : GameObject = Instantiate(<obj be cloned>,obj.transform.position,
                     obj.transform.rotation);
刪除物體 Destroy(obj,secs);

對象變換
    位置變換 obj.transform.position = Vector3(x,y,z);
    繞軸旋轉 obj.transform.Rotate(Vx,Vy,Vz);
    繞點旋轉 obj.transform.RotateAround(obj.transform.position,Vx,Vy,Vz);
    平移物體 obj.transform.Translate(Vector3.<x>);
                 x可以是forward fwd(向後) left right
    縮放物體 obj.transform.localScale = Vector3(sx,sy,sz);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章