[Header("给某一段加定义")]
[Tooltip("以Tooltip开头,可以在监视面板中查看当前的属性的作用")]
[SerializeField]
在Inspector版面中显示非public属性,并且序列化;若写在public前面,等于没写……(至于序列化是啥,自行脑补……)
[NonSerialized]
在Inspector版面中隐藏public属性,并且序列化;如果写在非public属性前面,等于没写……
[HideInInspector]
在Inspector版面中隐藏public属性,与上面相比,只是隐藏,没有序不序列化的功能……
[AddComponentMenu("XXX/XX/XXX")]
让Component菜单下出现你自定义的类,位置是“XXX/XX/XXX”,至于功能么,用过Component的都知道,不用解释了吧……
[ExecuteInEditMode]
在编辑界面让你的功能(类)起作用,就是你不用点开始,就可你让你的功能起作用,打个比方,NGUI里面的Slider的滑动条就是酱紫……
[RequireComponent (typeof (ClassName))]
就是在你把被这句话标记的类拖到(或者AddComponent)GameObject上时,自动再给你加上“ClassName”这个类……
[ContextMenu ("XXX")]
在Inspector版面中,右击包含这条标记的类,在菜单中会出现名为“XXX”的选项,点击选项,会执行被标记的功能(注:此乃标记功能也,非标记类)
[MenuItem ("XXX/XXX")]
在菜单中出现选项栏,点一下,执行对应功能。注:对应的功能必须是static,同时,使用的时候需要加上using UnityEditor,这个类也要找个Editor文件夹放(一般放“Assets\Editor”)
[Range(0,10)]
publicint score= 1;
//限制数值变量的取值范围并以滑动条显示在Inspector中
[System.Serializable]
使自定义的类能进行序列化,即当做一个public成员的时候可以在Inspector显示。