39.錨點不能超過父視圖的邊界。
38.Debug.DrawLine,可以在場景中畫出調(diào)試用的可視化線,點gizmos可以在運行中看到。
37.PlayerPrefs.SetFloat ("master vol", masterVolumePercent);保存用戶設(shè)置,下次打開游戲照樣有用。
36.DontDestroyOnLoad (gameObject);http://blog.csdn.net/cbbbc/article/details/48328997
35.[Header("Recoil")]加在屬性前,可在inspector里為某些屬性歸類用。
34.Vector3.magnitude 返回向量長度。Vector3.sqrMagnitude速度上更快,如果只是比較兩個向量的長度,建議Vector3.sqrMagnitude。
33.Cursor.visible = false;隱藏指針
32.culling mask選擇遮罩
31.FindObjectsOfType<Enemy>()在scene中找到所有類型為Enemy的對象。
30.awak()方法是在Instantiate()方法調(diào)用后立刻調(diào)用的,早于start()方法。
29.StartCoroutine配合IEnumerator方法使用。除了把方法作為參數(shù)外StartCoroutine (SpawnEnemy ());,還可以用方法名做參數(shù),如StartCoroutine ("SpawnEnemy");調(diào)用可以停止方法執(zhí)行StopCoroutine ("SpawnEnemy");
28.yield return new WaitForSeconds (3);//3秒后return。
27.Rigidbody.AddTorque 添加力矩
26.Rigidbody.AddForce 添加力
25.prefabs修改了以后要按一下apply按鈕使得修改生效。
24.Awake()是在腳本對象實例化時被調(diào)用的,而Start()是在對象的第一幀時被調(diào)用的,而且是在Update()之前。
23.Application.LoadLevel ("Cartoon Shot");可加載新的scene,以重開游戲。
22.[ContextMenu("Self Destruct")]在inspector中的附加腳本名字上右鍵菜單里添加一個按鈕。類似的黑科技見17.
21.獲取腳本附帶對象的方法:playerEntity = FindObjectOfType();
20.Mathf.Clamp(x,0,1);限定x的值為0到1.
19.Mathf.RoundToInt()某些情況下要代替int強轉(zhuǎn)。
18.Mathf.PingPong(spawnTimer*tileFlashSpeed,1)
17.if (GUILayout.Button ("Generate Map")) {
map.GenerateMap ();
}可以在inspector里創(chuàng)建一個按鈕,很實用。
16.PRNG 。pseudo random number generator 偽隨機數(shù)生成器
1.物理系統(tǒng)collider碰撞,rigidbody剛體。
加了rigidbody屬性的物體,就會被賦予所有物理特性,包括剛體碰撞,重力加速度等。相當于變成真實世界的物體了。沒有這個屬性的物體像是虛幻的物體,比如沒有質(zhì)量,可以穿墻等。
2.[SerializeField ]加在屬性前可以強制在IDE中看到屬性。不管是否publice
3.物體添加了某個腳本,該物體就可以被當作該腳本的類的對象。
4.NavMeshAgent類找不到,是因為需要添加包 using UnityEngine.AI;
5.工程目錄下的library文件夾可以刪掉,每次編譯運行會重新生成,可以不添加到版本管理里。
6.【System.Serializable】
當一個成員是復合類型時,只要在這個復合類型上標注了[System.Serializable]屬性,那這個成員也是一個可編輯的成員。Inspector窗口會按樹的形式,依次羅列這個類型中的可編輯成員。
http://www.cnblogs.com/sifenkesi/p/3923616.html
7.Unity中的Inspector面板可以顯示的屬性包括以下兩類:
(1)C#以及Unity提供的基礎(chǔ)類型;
(2)自定義類型,并使用[System.Serializable]關(guān)鍵字序列化,比如:
[System.Serializable]
public classTestClass{? ? public Vector3 vec =Vector3.zero;? ? public Color clr =Color.green;
}
其中TestClass是我們自己定義的類型,沒有繼承任何基礎(chǔ)類型,所以必須要序列化才能在inspector面板中顯示。
8.Quaternion.identity就是指Quaternion(0,0,0,0)是旋轉(zhuǎn)的初始值,類似于Vector3.zero表示位置的初始值。
9.Vector3.Lerp 插值
10.調(diào)試http://www.cnblogs.com/lancidie/archive/2013/04/09/3010937.html
11.new Vector3 (maxMapSize.x, maxMapSize.y)是可以的,構(gòu)造函數(shù)去掉了z默認為0;
12.菜單欄上的Component里可以選擇想添加的Component到當前所選的物體上。
13.NavMeshObstacle 分為兩種模式,一種是普通模式,通過設(shè)置半徑和高度來確定一個范圍,阻檔NavMeshAgent移動,一種是Carve模式,在導航網(wǎng)格上,根據(jù)模型的大小,挖出一個“洞”,使模型范圍內(nèi)的導航網(wǎng)格消失,這樣NavMeshAgent就不能經(jīng)過次區(qū)域了。
14.Vector3.left相當于 new Vector (-1,0,0); Vector3.right相當于 new Vector (1,0,0);
15.變量沒有聲明的話,編輯器里會變紅。