当前位置:文库下载 > 所有分类 > IT/计算机 > Unity3D脚本参考
免费下载此文档侵权投诉

Unity3D脚本参考

Unity3D脚本参考

Unity3D脚本参考

一、 脚本概览

这是一个关于Unity内部脚本如何工作的简单概览。

Unity内部的脚本,是通过附加自定义脚本对象到游戏物体组成的。在脚本对象内部不同志的函数被特定的事件调用。最常用的列在下面:

Update:

这个函数在渲染一帧之前被调用,这里是大部分游戏行为代码被执行的地方,除了物理代码。 FixedUpdate:

这个函数在每个物理时间步被调用一次,这是处理基于物理游戏的地方。

在任何函数之外的代码:

在任何函数之外的代码在物体被加载的时候运行,这个可以用来初始化脚本状态。

注意:文档的这个部份假设你是用Javascript,参考用C#编写获取如何使用C#和Boo编写脚本的信息。

你也能定义事件句柄,它们的名称都以On开始,(例如OnCollisionEnter),为了查看完整的预定义事件的列表,参考MonoBehaviour 文档。

概览:常用操作

大多数游戏物体的操作是通过游戏物体的Transform或Rigidbody来做的,在行为脚本内部它们可以分别通过transform和rigidbody访问,因此如果你想绕着Y轴每帧旋转5度,你可以如下写:

function Update(){

transform.Rotate(0,5,0);

}

如果你想向前移动一个物体,你应该如下写:

function Update(){

transform.Translate(0,0,2);

}

概览:跟踪时间

Time类包含了一个非常重要的类变量,称为deltaTime,这个变量包含从上一次调用Update或FixedUpdate(根据你是在Update函数还是在FixedUpdate函数中)到现在的时间量。 所以对于上面的例子,修改它使这个物体以一个恒定的速度旋转而不依赖于帧率: function Update(){

transform.Rotate(0,5*Time.deltaTime,0);

}

移动物体:

function Update(){

transform. Translate (0, ,0,2*Time.deltaTime);

}

如果你加或是减一个每帧改变的值,你应该将它与Time.deltaTime相乘。当你乘以Time.deltaTime时,你实际的表达:我想以10米/秒移动这个物体不是10米/帧。这不仅仅

第1页

免费下载Word文档免费下载:Unity3D脚本参考

(下载1-454页,共454页)

我要评论

返回顶部