Unity3D培训
美国上市Unity3D培训机构

400-111-8989

VR培训

Unity3D Script脚本编译器属性详解

  • 发布:Unity3D培训
  • 来源:Unity3D教程
  • 时间:2015-12-04 16:39

Script属性是基于IDE的一系列编译器属性。JS中用@script 属性方法()访问,c#中用[属性方法()]访问。

AddComponentMenu:在Component菜单中添加新的菜单项。

用法:




1

@script AddComponentMenu (“Transform/Follow Transform”)

2


3

class FollowTransform : MonoBehaviour

4


5

{

6


7

}

用处:可以自己开发组件类,在菜单里往GameObject里添加组件实例。

ContextMenu:在当前脚本的组件中添加右键菜单内容。

用法:




1

@ContextMenu (“Update Waypoints”)

2


3

function UpdateWaypoints()

4


5

{

6


7

}

8


用处:使用当前脚本时候可以用右键菜单触发开发环境中运行的函数。

ExecuteInEditMode:让当前脚本可以在运行模式中实时更新修改。

用法:




1

@script ExecuteInEditMode()

用处:使当前脚本可以在运行中实时更新修改,每帧都会重新导入脚本,可以方便调试使用。

HideInInspector:是变量在检测时不被显示,但是会被实例化。




1

@HideInInspector

2


3

var p = 5;

用处:是变量在检测时不被显示,但是会被实例化。

NonSerialized:标记一个变量不会被序列化。

用处:标记一个变量不会被序列化。我理解为不会被外部改变但是可以保持public状态。

RenderBeforeQueues:附加一个自定义渲染,在整个引擎渲染队列之前。

用法:




1

@RenderBeforeQueues(1000, 2000)

2


3

function OnRenderObject (queue : int) {

4


5

// do some custom rendering...

6


7

}

用处:在引擎渲染之前添加一个自定义的渲染。

RequireComponent:强制添加一个组件,(限定一定要有某个组件)

用法:

js:




1

@Script RequireComponent(Rigidbody)

c#:




1

[RequireComponent (typeof (Rigidbody))]

用处:强制添加一个组件到这个object上,如果存在,则该组件不允许被删除。

Serializable:序列化一个类。

用法:js继承Object类默认就是会被序列化。




01

class Test extends System.Object

02


03

{

04


05

var p = 5;

06


07

var c = Color.white;

08


09

}

10


11

var test = Test ();

12


13

// C# Example

14


15

[System.Serializable]

16


17

class Test

18


19

{

20


21

public int p = 5;

22


23

public Color c = Color.white;

24


25

}

用处:将一个类序列化。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:Unity3D PRO 3D游戏制作系列教程第五课:认识菜单III
下一篇:Unity3D RPC函数实现血量值同步代码
Unity3D中如何使用FileInfo类和File类?区别是什么?

Unity3D中如何使用FileInfo类和File类?区别是什么?

Unity3D Editor类(Inspector)经验总结

Unity3D Editor类(Inspector)经验总结

Unity3D webplayer的截图实现

Unity3D webplayer的截图实现

选择城市和中心
贵州省

广西省

海南省