39.锚点不能超过父视图的边界。
38.Debug.DrawLine,可以在场景中画出调试用的可视化线,点gizmos可以在运行中看到。
37.PlayerPrefs.SetFloat ("master vol", masterVolumePercent);保存用户设置,下次打开游戏照样有用。
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()方法调用后立刻调用的,早于start()方法。
29.StartCoroutine配合IEnumerator方法使用。除了把方法作为参数外StartCoroutine (SpawnEnemy ());,还可以用方法名做参数,如StartCoroutine ("SpawnEnemy");调用可以停止方法执行StopCoroutine ("SpawnEnemy");
28.yield return new WaitForSeconds (3);//3秒后return。
27.Rigidbody.AddTorque 添加力矩
26.Rigidbody.AddForce 添加力
25.prefabs修改了以后要按一下apply按钮使得修改生效。
24.Awake()是在脚本对象实例化时被调用的,而Start()是在对象的第一帧时被调用的,而且是在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强转。
18.Mathf.PingPong(spawnTimer*tileFlashSpeed,1)
17.if (GUILayout.Button ("Generate Map")) {
map.GenerateMap ();
}可以在inspector里创建一个按钮,很实用。
16.PRNG 。pseudo random number generator 伪随机数生成器
1.物理系统collider碰撞,rigidbody刚体。
加了rigidbody属性的物体,就会被赋予所有物理特性,包括刚体碰撞,重力加速度等。相当于变成真实世界的物体了。没有这个属性的物体像是虚幻的物体,比如没有质量,可以穿墙等。
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提供的基础类型;
(2)自定义类型,并使用[System.Serializable]关键字序列化,比如:
[System.Serializable]
public classTestClass{ public Vector3 vec =Vector3.zero; public Color clr =Color.green;
}
其中TestClass是我们自己定义的类型,没有继承任何基础类型,所以必须要序列化才能在inspector面板中显示。
8.Quaternion.identity就是指Quaternion(0,0,0,0)是旋转的初始值,类似于Vector3.zero表示位置的初始值。
9.Vector3.Lerp 插值
10.调试http://www.cnblogs.com/lancidie/archive/2013/04/09/3010937.html
11.new Vector3 (maxMapSize.x, maxMapSize.y)是可以的,构造函数去掉了z默认为0;
12.菜单栏上的Component里可以选择想添加的Component到当前所选的物体上。
13.NavMeshObstacle 分为两种模式,一种是普通模式,通过设置半径和高度来确定一个范围,阻档NavMeshAgent移动,一种是Carve模式,在导航网格上,根据模型的大小,挖出一个“洞”,使模型范围内的导航网格消失,这样NavMeshAgent就不能经过次区域了。
14.Vector3.left相当于 new Vector (-1,0,0); Vector3.right相当于 new Vector (1,0,0);
15.变量没有声明的话,编辑器里会变红。