资源描述
Unity3D教程:成员变量和全局变量
在函数外面定义的变量叫做成员变量,它们能够通过Unity的检查器进行访问,存储在成员变量中的值将自动地保存在项目中。
[C#] 纯文本查看 复制代码
?
1
var memeberVariable = 0.0;
上面的变量将作为一个叫做“Memeber Variable”的数字属性出现在检查器中。如果设置变量的类型为组件类型(Transform、Rigidbody、Collider和脚本名等) ,可以通过把游戏对象拖拽到检查器中这种类型的变量上来设置它们。
var enemy : Transform;
function Update()
{
if( Vecter3.Distance(enemy.postion, transform.position) < 10 )
{
print(“I sense the enemy is near!”);
}
}
你也可以创建私有成员变量, 它们主要用来存储状态信息, 而且在脚本外具有不可见性。私有成员变量不保存在磁盘上, 也不能在检查器中进行编辑。只有在检查器被设置为调试模式时,才允许你通过修改私有成员变量来实时地更新调试器。Unity3D教程手册
private var lastCollider : Collider;
function OnCollisionEnter(collisionInfo : Collision)
{
lastCollider = collisionInfo.other;
}
使用static 关键字进行声明的变量叫做全局变量,例如:
//一个名为“TheScriptName”的脚本中拥有一个someGlobal静态变量
static var someGlobal = 5;
//你可以在脚本中像使用普通变量一样来使用它
print(someGlobal);
someGlobal = 1;
为了能在其他脚本中访问全局变量,需要加上“TheScriptName.”前缀:
print(TheScriptName.someGlobal);
TheScriptName.someGlobal = 10;
展开阅读全文