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

400-111-8989

热门课程

Unity3DMonoBehaviour API函数调用时序剖析

  • 时间:2016-12-30
  • 发布:Unity3D培训
  • 来源:Unity3D教程

MonoBehaviour Mono行为

Inherits from Behaviour

MonoBehaviour is the base class every script derives from.

MonoBehaviour是每个脚本的基类.

Using JavaScript every script automatically derives from MonoBehaviour. When using C# or Boo you have to explicitly derive from MonoBehaviour.

每个Javascript脚本自动继承MonoBehaviour,使用C#或Boo时,需要显式继承MonoBehaviour.

Note: The checkbox for disabling a MonoBehavior (on the editor) will only prevent Start(), Awake(), Update(), FixedUpdate(), and OnGUI() from executing. If none of these functions are present, the checkbox is not displayed.

注意:MonoBehavior对象(编辑器中)的复选框,只有在其有Start(),Awake(),Update(), FixedUpdate()和 OnGUI()函数时显示,没有这些函数时则隐藏。(另注:译者在PC上Windows平台测试结果与此注释所描述情况不符)

Variables变量

useGUILayout

Disabling this lets you skip the GUI layout phase.

禁用此项,将会跳过GUILayout布局阶段。

Functions函数

Invoke

Invokes the method methodName in time seconds.

在time秒调用methodName方法;简单说,根据时间调用指定方法名的方法

InvokeRepeating

Invokes the method methodName in time seconds.

在time秒调用methodName方法;简单说,每隔指定时间调用指定方法名的方法

CancelInvoke

Cancels all Invoke calls on this MonoBehaviour.

取消这个MonoBehaviour上的所有调用。

IsInvoking

Is any invoke on methodName pending?

某指定函数是否在等候调用。

StartCoroutine

Starts a coroutine.

开始协同程序。

StopCoroutine

Stops all coroutines named methodName running on this behaviour.

停止这个动作中名为methodName的所有协同程序

StopAllCoroutines

Stops all coroutines running on this behaviour.

停止所有动作的协同程序

Overridable Functions可重写函数

运作时序图:

【MonoBehaviour api函数调用时序剖析(】

Update

Update is called every frame, if the MonoBehaviour is enabled.

当MonoBehaviour启用时,其Update在每一帧被调用。

LateUpdate

LateUpdate is called every frame, if the Behaviour is enabled.

当Behaviour启用时,其LateUpdate在每一帧被调用。

FixedUpdate

This function is called every fixed framerate frame, if the MonoBehaviour is enabled.

当MonoBehaviour启用时,其 FixedUpdate 在每一帧被调用。

Awake

Awake is called when the script instance is being loaded.

当一个脚本实例被载入时Awake被调用。

Start

Start is called just before any of the Update methods is called the first time.

Start仅在Update函数第一次被调用前调用。

Reset

Reset to default values.

重置为默认值。

OnMouseEnter

OnMouseEnter is called when the mouse entered the GUIElement or Collider.

当鼠标进入到GUIElement(GUI元素)或Collider(碰撞体)中时调用OnMouseEnter。

OnMouseOver

OnMouseOver is called every frame while the mouse is over the GUIElement or Collider.

当鼠标悬浮在GUIElement(GUI元素)或Collider(碰撞体)上时调用 OnMouseOver .

OnMouseExit

OnMouseExit is called when the mouse is not any longer over the GUIElement or Collider.

当鼠标移出GUIElement(GUI元素)或Collider(碰撞体)上时调用OnMouseExit。

OnMouseDown

OnMouseDown is called when the user has pressed the mouse button while over the GUIElement or Collider.

当鼠标在GUIElement(GUI元素)或Collider(碰撞体)上点击时调用OnMouseDown。

OnMouseUp

OnMouseUp is called when the user has released the mouse button.

当用户释放鼠标按钮时调用OnMouseUp。

OnMouseUpAsButton

OnMouseUpAsButton is only called when the mouse is released over the sameGUIElement or Collider as it was pressed.

OnMouseUpAsButton只有当鼠标在同一个GUIElement或Collider按下,在释放时调用。

OnMouseDrag

OnMouseDrag is called when the user has clicked on a GUIElement or Collider and is still holding down the mouse.

当用户鼠标拖拽GUIElement(GUI元素)或Collider(碰撞体)时调用 OnMouseDrag 。

OnTriggerEnter

OnTriggerEnter is called when the Collider other enters the trigger.

当Collider(碰撞体)进入trigger(触发器)时调用OnTriggerEnter。

OnTriggerExit

OnTriggerExit is called when the Collider other has stopped touching the trigger.

当Collider(碰撞体)停止触发trigger(触发器)时调用OnTriggerExit。

OnTriggerStay

OnTriggerStay is called once per frame for every Collider other that is touching the trigger.

当碰撞体接触触发器时,OnTriggerStay将在每一帧被调用。

OnCollisionEnter

OnCollisionEnter is called when this collider/rigidbody has begun touching another rigidbody/collider.

当此collider/rigidbody触发另一个rigidbody/collider时,OnCollisionEnter将被调用。

OnCollisionExit

OnCollisionExit is called when this collider/rigidbody has stopped touching another rigidbody/collider.

当此collider/rigidbody停止触发另一个rigidbody/collider时,OnCollisionExit将被调用。

OnCollisionStay

OnCollisionStay is called once per frame for every collider/rigidbody that is touching rigidbody/collider.

当此collider/rigidbody触发另一个rigidbody/collider时,OnCollisionStay将会在每一帧被调用。

OnControllerColliderHit

OnControllerColliderHit is called when the controller hits a collider while performing a Move.

在移动的时,当controller碰撞到collider时OnControllerColliderHit被调用。

OnJointBreak

Called when a joint attached to the same game object broke.

当附在同一对象上的关节被断开时调用。

OnParticleCollision

OnParticleCollision is called when a particle hits a collider.

当粒子碰到collider时被调用。

OnBecameVisible

OnBecameVisible is called when the renderer became visible by any camera.

当renderer(渲染器)在任何相机上可见时调用OnBecameVisible。

OnBecameInvisible

OnBecameInvisible is called when the renderer is no longer visible by any camera.

当renderer(渲染器)在任何相机上都不可见时调用OnBecameInvisible。

OnLevelWasLoaded

This function is called after a new level was loaded.

当一个新关卡被载入时此函数被调用。

OnEnable

This function is called when the object becomes enabled and active.

当对象变为可用或激活状态时此函数被调用。

OnDisable

This function is called when the behaviour becomes disabled () or inactive.

当对象变为不可用或非激活状态时此函数被调用。

OnDestroy

This function is called when the MonoBehaviour will be destroyed.

当MonoBehaviour将被销毁时,这个函数被调用。

OnPreCull

OnPreCull is called before a camera culls the scene.

在相机消隐场景之前被调用。

OnPreRender

OnPreRender is called before a camera starts rendering the scene.

在相机渲染场景之前被调用。

OnPostRender

OnPostRender is called after a camera finished rendering the scene.

在相机完成场景渲染之后被调用。

OnRenderObject

OnRenderObject is called after camera has rendered the scene.

在相机场景渲染完成后被调用。

OnWillRenderObject

OnWillRenderObject is called once for each camera if the object is visible.

如果对象可见每个相机都会调用它。

OnGUI

OnGUI is called for rendering and handling GUI events.

渲染和处理GUI事件时调用。

OnRenderImage

OnRenderImage is called after all rendering is complete to render image

当完成所有渲染图片后被调用,用来渲染图片后期效果。

OnDrawGizmosSelected

Implement this OnDrawGizmosSelected if you want to draw gizmos only if the object is selected.

如果你想在物体被选中时绘制gizmos,执行这个函数。

OnDrawGizmos

Implement this OnDrawGizmos if you want to draw gizmos that are also pickable and always drawn.

如果你想绘制可被点选的gizmos,执行这个函数。

OnApplicationPause

Sent to all game objects when the player pauses.

当玩家暂停时发送到所有的游戏物体。

OnApplicationFocus

Sent to all game objects when the player gets or looses focus.

当玩家获得或失去焦点时发送给所有游戏物体。

OnApplicationQuit

Sent to all game objects before the application is quit.

在应用退出之前发送给所有的游戏物体。

OnPlayerConnected

Called on the server whenever a new player has successfully connected.

当一个新玩家成功连接时在服务器上被调用。

OnServerInitialized

Called on the server whenever a Network.InitializeServer was invoked and has completed.

当Network.InitializeServer被调用并完成时,在服务器上调用这个函数。

OnConnectedToServer

Called on the client when you have successfully connected to a server

当你成功连接到服务器时,在客户端调用。

OnPlayerDisconnected

Called on the server whenever a player disconnected from the server.

当一个玩家从服务器上断开时在服务器端调用。

OnDisconnectedFromServer

Called on the client when the connection was lost or you disconnected from the server.

当失去连接或从服务器端断开时在客户端调用。

OnFailedToConnect

Called on the client when a connection attempt fails for some reason.

当一个连接因为某些原因失败时在客户端调用。

OnFailedToConnectToM...

Called on clients or servers when there is a problem connecting to the MasterServer.

当报告事件来自主服务器时在客户端或服务器端调用。

OnMasterServerEvent

Called on clients or servers when reporting events from the MasterServer.

当报告事件来自主服务器时在客户端或服务器端调用。

OnNetworkInstantiate

Called on objects which have been network instantiated with Network.Instantiate

当一个物体使用Network.Instantiate进行网络初始化时调用。

OnSerializeNetworkView

Used to customize synchronization of variables in a script watched by a etwork view.

在一个网络视图脚本中,用于自定义变量同步。

Class Functions类函数

print

Logs message to the Unity Console. This function is identical to Debug.Log.

记录消息到Unity控制台,这个函数和Debug.Log作用相同。

Inherited members继承成员

Inherited Variables继承变量

enabled

Enabled Behaviours are Updated, disabled Behaviours are not.

启用行为被更新,禁用行为不更新。

transform

The Transform attached to this GameObject (null if there is none attached).

Transform附加到GameObject(游戏物体)(如无附加则为空)。

rigidbody

The Rigidbody attached to this GameObject (null if there is none attached).

Rigidbody附加到GameObject(游戏物体)(如无附加则为空)。

camera

The Camera attached to this GameObject (null if there is none attached).

Camera附加到GameObject(游戏物体)(如无附加则为空)。

light

The Light attached to this GameObject (null if there is none attached).

Light附加到GameObject(游戏物体)(如无附加则为空)。

animation

The Animation attached to this GameObject (null if there is none attached).

Animation附加到GameObject(游戏物体)(如无附加则为空)。

constantForce

The ConstantForce attached to this GameObject (null if there is none attached).

ConstantForce附加到GameObject(游戏物体)(如无附加则为空)。

renderer

The Renderer attached to this GameObject (null if there is none attached).

Renderer附加到GameObject(游戏物体)(如无附加则为空)。

audio

The AudioSource attached to this GameObject (null if there is none attached).

AudioSource附加到GameObject(游戏物体)(如无附加则为空)。

guiText

The GUIText attached to this GameObject (null if there is none attached).

GUIText附加到GameObject(游戏物体)(如无附加则为空)。

networkView

The NetworkView attached to this GameObject (Read Only). (null if there is one attached)

NetworkView附加到GameObject(游戏物体)(只读)(如无附加则为空)。

guiTexture

The GUITexture attached to this GameObject (Read Only). (null if there is one attached)

GUITexture附加到GameObject(游戏物体)(只读)(如无附加则为空)。

collider

The Collider attached to this GameObject (null if there is none attached).

Collider附加到GameObject(游戏物体)(如无附加则为空)。

hingeJoint

The HingeJoint attached to this GameObject (null if there is none attached).

HingeJoint附加到GameObject(游戏物体)(如无附加则为空)。

particleEmitter

The ParticleEmitter attached to this GameObject (null if there is none attached).

ParticleEmitter附加到GameObject(游戏物体)(如无附加则为空)。

gameObject

The game object this component is attached to. A component is always attached to a game object.

组件附加的游戏物体。一个组件总是被附加到一个游戏物体。

tag

The tag of this game object.

游戏物体的标签。

name

The name of the object. //物体的名字

hideFlags

Should the object be hidden, saved with the scene or modifiable by the user?

物体是否被隐藏、保存在场景中或被用户修改?

Inherited Functions继承函数

GetComponent

Returns the component of Type type if the game object has one attached, ull if it doesn't.

如果游戏物体有一个附加,则返回Type类型的组件,如果没有则为null。

GetComponent.

GetComponent

Returns the component with name type if the game object has one attached, ull if it doesn't.

如果游戏物体有一个附加,则返回名字类型组件,如果没有则为null。

GetComponentInChildren

Returns the component of Type type in the GameObject or any of its children using depth first search.

返回Type类型组件,在GameObject或它的任何子物体使用深度优先搜索,仅返回激活的组件。

GetComponentInChildren.

GetComponentsInChildren

Returns all components of Type type in the GameObject or any of its children.

在GameObject或任何它的子物体,返回全部Type类型组件

GetComponentsInChildren.

GetComponents

Returns all components of Type type in the GameObject.

在游戏物体返回全部Type类型组件。

GetComponents.

CompareTag

Is this game object tagged tag?

游戏物体有被标记标签么?

SendMessageUpwards

Calls the method named methodName on every MonoBehaviour in this game object and on every ancestor of the behaviour

在游戏物体每一个MonoBehaviour和每一个behaviour的祖先上调用名为methodName的方法。

SendMessage

Calls the method named methodName on every MonoBehaviour in this game object.

在游戏物体每一个MonoBehaviour上调用名为methodName的方法。

BroadcastMessage

Calls the method named methodName on every MonoBehaviour in this game object or any of its children.

在游戏物体每一个MonoBehaviour和它的全部子物体上调用名为methodName的方法。

GetInstanceID

Returns the instance id of the object.

返回物体的实例ID

ToString

Returns the name of the game object.

返回游戏物体的名称。

Inherited Class Functions继承类函数

Destroy

Removes a gameobject, component or asset.

删除一个游戏物体、组件或资源

DestroyImmediate

Destroys the object obj immediately. It is strongly recommended to use Destroy instead.

立即销毁物体obj,强烈建议使用Destroy代替。

DontDestroyOnLoad

Makes the object target not be destroyed automatically when loading a new scene.

加载新场景的时候使目标物体不被自动销毁。

FindObjectOfType

Returns the first active loaded object of Type type.

返回Type类型第一个激活的加载的物体。

FindObjectsOfType

Returns a list of all active loaded objects of Type type.

返回Type类型的所有激活的加载的物体列表

Instantiate

Clones the object original and returns the clone.

克隆原始物体,并返回克隆的物体

上一篇:Unity3DMonoDevelop断点调试教程
下一篇:Unity3D中的JavaScript语言基础
选择城市和中心
贵州省

广西省

海南省

台湾