查看: 1720|回复: 2
打印 上一主题 下一主题

[教程] Unity3D脚本中文教程1.5

[复制链接]

5552

主题

2

听众

8万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
11

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-5-11 15:00:47 |只看该作者 |倒序浏览
5.一种类型的所有脚本

使用Object.FindObjectsOfType找到所有具有相同类或脚本名称的物体,或者使用Object.FindObjectOfType.找到这个类型的第一个物体。

function Start ()

{

// 找到场景中附加了OtherScript的任意一个游戏物体

var other : OtherScript = FindObjectOfType(OtherScript);

other.DoSomething();

}

概览:向量

Unity使用Vector3类同一表示全体3D向量,3D向量的不同组件可以通过想x,y和z成员变量访问。

var aPosition : Vector3;

aPosition.x = 1;

aPosition.y = 1;

aPosition.z = 1;

你也能够使用Vector3构造函数来同时初始化所有组件。

var aPosition = Vector3(1, 1, 1);

Vector3也定义了一些常用的变量值。

var direction = Vector3.up; // 与 Vector3(0, 1, 0);相同

单个向量上的操作可以使用下面的方式访问:

someVector.Normalize();

使用多个向量的操作可以使用Vector3类的数;

theDistance = Vector3.Distance(oneVector, otherVector);

(注意你必须在函数名之前写Vector3来告诉JavaScript在哪里找到这个函数,这适用于所有类函数)

你也可以使用普通数学操作来操纵向量。

combined = vector1 + vector2;

查看Vector3类文档获取完整操纵和可用属性的列表。

概览:成员变量 & 全局变量变量

定义在任何函数之外的变量是一个成员变量。在Unity中这个变量可以通过检视面板来访问,任何保存在成员变量中的值也可以自动随工程保存。

var memberVariable = 0.0;

上面的变量将在检视面板中显示为名为"Member Variable"的数值属性。

如果你设置变量的类型为一个组件类型(例如Transform, Rigidbody, Collider,任何脚本名称,等等)然后你可以在检视面板中通过拖动一个游戏物体来设置它们。

var enemy : Transform;

function Update()

{

if ( Vector3.Distance( enemy.position, transform.position ) < 10 );

print("I sense the enemy is near!");

}

}

你也可以创建私有成员变量。私有成员变量可以用来存储那些在该脚本之外不可见的状态。私有成员变量不会被保存到磁盘并且在检视面板中不能编辑。当它被设置为调试模式时,它们在检视面板中可见。这允许你就像一个实时更新的调试器一样使用私有变量。

private var lastCollider : Collider;

function OnCollisionEnter( collisionInfo : Collision ) {

lastCollider = collisionInfo.other;

}

全局变量

你也可以使用static关键字创建全局变量

这创造了一个全局变量,名为someGlobal

// 'TheScriptName.js'中的一个静态变量

static var someGlobal = 5;

// 你可以在脚本内部像普通变量一样访问它

print(someGlobal);

someGlobal = 1;

为了从另一个脚本访问它,你需要使用这个脚本的名称加上一个点和全局变量名。

print(TheScriptName.someGlobal);

TheScriptName.someGlobal = 10;
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

nts    

3

主题

1

听众

743

积分

初级设计师

Rank: 3Rank: 3

纳金币
7
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2013-10-18 19:39:12 |只看该作者
学习了谢谢
回复

使用道具 举报

2

主题

1

听众

1143

积分

助理设计师

Rank: 4

纳金币
350
精华
0
板凳
发表于 2013-10-28 10:13:21 |只看该作者
感谢楼主分享~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-27 10:34 , Processed in 0.375906 second(s), 28 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部