▼ 註解方式
/* 中英文皆可 */ 較長用
// 中英文皆可 較短用
- 按鍵觸發 (通常寫在 Update 中)
if (Input.GetKey(“A“)){ }
// A 鍵被”按住時“會持續觸發(每個 frame 執行一次)
GetKeyDown “按下瞬間“會觸發一次、GetKeyUp “放開瞬間“會觸發一次。
- 滑鼠觸發 (通常要另外寫一行)
void OnMouseDown(){ print (“中英皆可”);}
// 當滑鼠點擊後會產生顯示中英皆可的文字反應
ex: 當滑鼠點擊後會旋轉
void OnMouseDown(){ transform.Rotate( x, y, z );}
OnMouseEnter “滑鼠碰到“會瞬間觸發、OnMouseExit “滑鼠移開“會觸發。
- 與Transform 相關
transform.Rotate( x, y, z ); 旋轉
transform.Translate( x, y, z ); 移動
transform.position = new Vector3( x, y, z ); 設定位置
- GameObject (抓取物件)
GameObject.Find(“物件名稱“);
ex: 要移動場景中名為 doll 的物件
GameObject.Find(“doll“).transform. Translate ( 0, 2, 0 );
- Component (抓取元件)
GetComponent<元件類型>();
除了 transform 可以直接打,其他元件都要先用 GetComponent 抓取。
ex: 要對 Rigidbody 元件使用 AddForce
if(Input.GetKey(“A“)){GetComponent<Rigidbody>().AddForce( 0, 0, 5 );} 扳倒
【如果按住A後,會持續觸發Rigidbody 中的AddForce效果】
或
if(Input.GetKeyDown(“space“)){GameObject ballCopy = Instantiate (ball); ball.GetComponent<Rigidbody>().AddForce( arrow.transform.forward*15,ForceMode.Impulse );}
【如果按下 空白鍵 後,會瞬間觸發一次{讓變數ballCopy = 複製一次物件 ball ;讓ballCopy抓取Rigidbody 類型中的AddForce元件中朝著變數 arrow 的前面,用力量模式.一瞬間的力量推15力度】
- 物件複製
Instantiate( 物件名稱 );
- 啟用 / 停用 物件、元件
yourObject.SetActive( true ); 啟用物件
yourComponent.enabled = true; 啟用元件
- 補充:
布林值 ( bool ) 只分為兩種答案,為 true 開 / false 關。
ex: 原 int a = 0; / a = 1;
可改成 bool a = false; / a = true;
布林值為常用手法。
- 呼叫其他物件的函數
GameObject.Find(“物件名“).GetComponent<script名稱>().函數名稱();
可將速值放上面板上去做調整,只要在程式碼的前面加入 public 即可。
ex: public int a; 設定變數 a 顯示在面板
★版權所有,盜用必究★