【正文】
t foo 你可以通過檢視面板賦值變量到任何物體 //變換拖動到target的物體 var target : Transform function Update 1 0 你也可以在檢視面板中公開到其他物體的引用下面你可以拖動一個包含的游戲物體到檢視面板中的target槽。 //設(shè)置在檢視面板中賦值的target變量上的foo調(diào)用DoSomething var target : OtherScript function Update //設(shè)置target物體的foo變量 2 // 調(diào)用target上的DoSomething 對于一個已經(jīng)存在的物體可以通過游戲物體的Transform組件來找到子和父物體 //找到腳本所附加的 //游戲物體的子―Hand‖ 1 0 一旦在層次視圖中找到這個變換你可以使用GetComponent來獲取其他腳本 //找到名為―Hand‖的子 //在附加到它上面的OtherScript中設(shè)置foo為2 1 0 //找到名為―Hand‖的子 //然后應(yīng)用一個力到附加在hand上的剛體 // 找到名為―Hand‖的了 // 然后應(yīng)用一個力到附加在hand上的剛體 10 0 你可以循環(huán)所有的子 //變換的所有子向上移動10個單位 for var child : Transform in transform 1 0 參考Transform類文檔獲取更多信息。 Part 2 . 。 function Start // 按照名稱 var go 1 0 // 按照標(biāo)簽 var player 1 0 你可以在結(jié)果上使用GetComponent在找到的游戲物體上得到任何腳本或組件。 function Start // 按名稱 var go // 按標(biāo)簽 var player 。 一些事件消息在事件包含詳細(xì)信息。例如觸發(fā)器事件傳遞碰撞物體的Collider組件到處理函數(shù)。 OnTriggerStay給我們一個到碰撞器的引用。從這個碰撞器我們可以獲取附加到其上的剛體。 function OnTriggerStay other : Collider // 如果另一個碰撞器也有一個剛體 // 應(yīng)用一個力到它上面 if 2 0 或者我們可以通過碰撞器獲取附加在同一個物體上的任何組件。 function OnTriggerStay other : Collider // 如果另一個碰撞器附加了OtherScript // 調(diào)用它上面的DoSomething // 大多數(shù)時候碰撞器不會附加腳本 // 所以我們需要首先檢查以避免null引用異常 if 注意通過上述例子中的other變量你可以訪問碰撞物體中的任何組件。 。 function Start // 找到場景中附加了OtherScript的任意一個游戲物體 var other : OtherScript FindObjectOfTypeOtherScript 概覽向量 Unity使用Vector3類同一表示全體3D向量3D向量的不同組件可以通過想xy和z成員變量訪問。 var aPosition : Vector3 1 1 1 你也能夠使用Vector3構(gòu)造函數(shù)來同時初始化所有組件。 var aPosition Vector31 1 1 Vector3也定義了一些常用的變量值。 var direction // 與 Vector30 1 0相同 單個向量上的操作可以使用下面的方式訪問 使用多個向量的操作可以使用Vector3類的數(shù) theDistance otherVector 注意你必須在函數(shù)名之前寫Vector3來告訴JavaScript在哪里找到這個函數(shù)這適用于所有類函數(shù) 你也可以使用普通數(shù)學(xué)操作來操縱向量。 bined vector1 vector2 查看Vector3類文檔獲取完整操縱和可用屬性的列表。 概覽成員變量 amp 全局變量變量 定義在任何函數(shù)之外的變量是一個成員變量。在Unity中這個變量可以通過檢視面板來訪問任何保存在成員變量中的值也可以自動隨工程保存。 var memberVariable 上面的變量將在檢視面板中