我能解释一下为什么 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 关注
- 103 浏览
添加回答
举报
0/150
提交
取消