我能解釋一下為什么 Quaternion.identity 的 Q 大寫,而 transform.position 的 T 卻小寫嗎?是因為他們使用了不同的指令或程序集嗎?private void Fire() { GameObject enemyLaser = Instantiate (enemyLaserPrefab, transform.position, Quaternion.identity) as GameObject; }
2 回答

慕田峪4524236
TA貢獻1875條經驗 獲得超5個贊
因為Quaternion
引用了一種類型,因為idendity
is?static
whiletransform
引用了與腳本相同的類型的實例屬性。Transform
GameObject
由于某種原因,Unity 對屬性使用駝峰命名法。通常,您實際上會使用 PascalCase 來public
表示屬性,但這些都是“約定”,基本上您可以決定使用其他符號 - 至少它們保持了大部分一致。

元芳怎么了
TA貢獻1798條經驗 獲得超7個贊
這就是 Unity3d 命名約定。類型 ,Quaternion
是大寫的。但他們對屬性和字段使用“駝峰式大小寫”。因此沒有大寫identity
。
它完全是任意的,但在整個 Unity3d API 中是一致的。
請注意,因為identity
是靜態成員,所以可以通過聲明它的類型 ( Quaternion
) 來訪問它。您正在查看的其他成員transform
都是position
當前班級的成員。該transform
屬性返回當前對象的變換對象,該position
屬性返回變換對象的位置對象。因為它們都是類成員,而不是類型名稱,所以它們也是駝峰式命名的。
- 2 回答
- 0 關注
- 185 瀏覽
添加回答
舉報
0/150
提交
取消