close

顏色意義:關鍵字數字字串註解重點              Unity-API : 在這裡

語法類:

 基本輸出   print("萌");
 設定GUI-Text   guiText.text = "萌";
 移動GUI-Text  guiText.pixelOffset.x = 5
 鍵盤輸入控制  if(Input.GetKey("space")){ // 鍵盤按下後,要執行的程式碼,字串必須為小寫 } 
 鍵盤按下輸入控制  if(Input.GetKeyDown("space")){// 鍵盤按下後,要執行的程式碼,字串必須為小寫}
 計時器(秒)

 var t : float = Time.time;

 GUI按鈕控制  if(GUI.Button(Rect(x,y,w,h),"ABC")){ // 按鈕按下後,要執行的程式碼 }
 取亂數  var f : floatRandom.Range(1,7);  // 產生1~6,無7 
 設定GUI-Label  GUI.Label(Rect(x,y,w,h),"ABC");
 播放動畫  animation.Play("動畫名稱");  // 動畫名稱要從外部控制面板命名
 播放混合動畫  animation.CrossFade("動畫名稱");  // 動畫名稱要從外部控制面板命名
 取得物件速度  var s : float = rigidbody.velocity.magnitude;
 物件加速 (場景座標)  rigidbody.AddForce(transform.forward * 5);
 物件加速 (物體座標)  rigidbody.AddRelativeForce(transform.forward * 5);
 捨小數  var i : int= Mathf.Floor(3.333);   // i = 3
 取 0~1  var i : int = Mathf.Clamp01(0.9)  // i = 0, 如果大於1 輸出1,如果小於1 輸出0
 停止遊戲物件  gameObject.active = false;
   
 加入 Texture  var tt = Texture;  //  Texture 要從外部控制面板拉入
 GUI.DrawTexture(Rect(x,y,w,h),tt);
 改變GUI風格  var gs = GUIStyle;  //  GUIStyle 要從外部控制面板設定
 GUI.Label(Rect(x,y,w,h),"ABC",gs);  // 例子,其他GUI意同
 碰撞後呼叫函式  // ★外部控制面板 Collider 中的 Is Trigger 要打勾
 function OnTriggerEnter( c : Collider ){ // 碰撞後要執行的程式碼 }
 // c 為外部碰撞的遊戲物件(GameObject)
 碰撞後取得標籤名
                   tag名
 // ★ tag 要在外部控制面板 加入並設定 tag 名稱,最後將 tag 套用於物件上,
 //     tag 名稱開頭一定要大寫,如:Player、Aaa、Bbb、Ccc、Ddd
 //  碰撞物還必須設定 rigidbody , 重力可設為0
 function OnTriggerEnter( c : Collider ){ if(c.tag == "Player"){} }
 碰撞後瞬間移動
 位置
 function OnTriggerEnter( c : Collider ){ if(c.tag == "Player"){
          c.transform.position = Vector(x,y,z);
} }
 瞬間移動物件  transform.position = Vector3(x,y,z);
 平滑旋轉物件  transform.Rotate(x, y, z);
 取得當前物件座標  var x : float = transform.position.x;
 刪除本地物件  Destroy(gameObject);
 切換場景   //使用數字控制要在外部 File→Build Settings→Scens In Build 設定場景順序
  Application.LoadLevel(0); // 切換到場景 0
  Application.LoadLevel(1); // 切換到場景 1
  Application.LoadLevel(2); // 切換到場景 2
  // 使用文字控制是使用場景檔案名稱,例如 Level1.unity 檔,只要輸入 Level1 即可
  Application.LoadLevel("Level1"); // 切換到場景 Level1
  Application.LoadLevel("Level2"); // 切換到場景 Level2
 加入已預製好的物件
 到場景中
 GameObject aaa; // 要把預製物件套用至 aaa 控制面板中
 Instantiate(aaa,Vector3(x,y,z),Quaternion.identity); 
 每FPS維持等速度  Time.deltaTime
 按鍵輸入,水平控制
 " W D ← →  " 等
按鍵之移動數值取得
 Input.GetAxisRaw("Horizontal")
 物件右移動1  transform.Translate(Vector3.right);
 物件右移動2  transform.Translate(Vector3(1,0,0));
 取得目前遊戲解析度  var w : int = Screen.width;
 var 
h : int = Screen.height;
 判斷滑鼠按鍵  if(Input.GetMouseButtonDown(0))    // 滑鼠左鍵
 if(Input.GetMouseButtonDown(1))    // 滑鼠右鍵
 if(Input.GetMouseButtonDown(2))    // 滑鼠中鍵
 持續移動物件  transform.Translate( Vector3(0, 0, 1) );
 transform.Translate( Vector3.up );
 取得三軸加速器狀態
 (Android, iPhone)
 // 可以取得 x , y , z 三軸加速座標 ( 本範例只取得 x )
 var
x : float = Input.acceleration.x    

 旋轉物件到指定角度  transform.rotation = Quaternion.Euler(0, 0, 0); // 與設定外部控制面板一樣
 建立重複按鈕
 按下按鈕為 true
 直到放開才為 false
 void OnGUI{ 
     // 如果用戶將按鈕按下,三秒後放開。殺必死會持續列印到放開按鈕 (例如印 100次)
     if(GUI.RepeatButton(Rect(0,0,50,20),"萌")){ print("殺必死"); }
 }
 建立按鈕
 按下按鈕為 true
 但馬上就變成 false
void OnGUI{ 
     // 如果用戶將按鈕按下,三秒後放開。殺必死只會被列印一次
    if(GUI.Button(Rect(0,0,50,20),"萌")){ print("殺必死"); }
}
 更改 GUI 樣式  var a : GUISkin ; // 要從外部新建一個 GUISkin 並從控制面板拉進來
 function OnGUI () {
     GUI.skin = a;
     GUILayout.Label("萌"); // 此文字會依造外部 GUISyin 設定檔而改變
 播放聲音  // 要從外部建立一個空物件,並給予一個 AudioSource 元件,
 // 再將mp3音樂檔拖曳進AudioSource中,之後再將這空物件再拖曳進此腳本中。
 // 如果要重複撥放,請在外部 AudioSource 設定
 var sound : AudioSource
 function Start(){
     sound.Play(); // 撥放
     // sound.pitch = 1; // (可選) 改變音調。例如在賽車遊戲中控制引擎聲。
     // sound.Stop(); // (可選) 停止
}
當前攝影機拍照  // 使用絕對路徑存圖片該資料夾一定要存在,他不會自動幫你建立資料夾。
 // 如果該資料夾已有相同檔案名稱,將會覆蓋該圖片。 
 Application.CaptureScreenshot("Loli.png"); // 預設為該遊戲(專案)資料夾路徑
 Application.CaptureScreenshot("D:/Loli.png"); // 指定資料夾路徑 
 打開特定網頁  Application.OpenURL ("http://lolikitty.pixnet.net/");
   
 目前網路狀態  Network.TestConnection()  //  更詳細的說明請*點這裡*
 偵測
 公開IP 或 私人IP
 if(Network.HavePublicAddress){ /* 公開IP */ }else { /* 私人IP */ }
 初始化伺服器1  Network.InitializeServer(5, 88, true); // 可以連入5人,Port=88,使用NAT穿透
 初始化伺服器2  Network.InitializeServer(5, 88, false); // 可以連入5人,Port=88,不使用NAT穿透
 初始化伺服器3  // 可以連入 5 人,Port = 88,自動設定偵測是否要NAT穿透
 Network.InitializeServer(5, 88, ! Network.HavePublicAddress());
 將伺服器設定密碼  Network.incomingPassword = "abcABC1234"; // 最好寫在初始化伺服器前
 結束遊戲呼叫方法  void OnApplicationQuit(){} // 開發階段也有效
 強制結束遊戲  Application.Quit();
   

 



介面設定 (非語法類):

 陰影顯示範圍   Edit→Project Setting→Quality
 依造你的畫質 Fastest / Fast / Simple / Good / Beautiful / Fantastic 
 修改 Shadow Distance 的值 (例如 1000 ,越大看得越遠)
   
   
   
   
   
   
   
   
   

其他重點:

開發手機遊戲時 模型大小不可以超過 200 ,否則Unity會自動把陰影關閉 (如果遊戲不使用陰影的話則無此限制)。

 

 

 

 

 

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 黃彥霖 的頭像
    黃彥霖

    彥霖 實驗筆記

    黃彥霖 發表在 痞客邦 留言(11) 人氣()