我能解释一下为什么 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引用了一种类型,因为idendityis staticwhiletransform引用了与脚本相同的类型的实例属性。TransformGameObject
由于某种原因,Unity 对属性使用驼峰命名法。通常,您实际上会使用 PascalCase 来public表示属性,但这些都是“约定”,基本上您可以决定使用其他符号 - 至少它们保持了大部分一致。
元芳怎么了
TA贡献1798条经验 获得超7个赞
这就是 Unity3d 命名约定。类型 ,Quaternion是大写的。但他们对属性和字段使用“驼峰式大小写”。因此没有大写identity。
它完全是任意的,但在整个 Unity3d API 中是一致的。
请注意,因为identity是静态成员,所以可以通过声明它的类型 ( Quaternion) 来访问它。您正在查看的其他成员transform都是position当前班级的成员。该transform属性返回当前对象的变换对象,该position属性返回变换对象的位置对象。因为它们都是类成员,而不是类型名称,所以它们也是驼峰式命名的。
- 2 回答
- 0 关注
- 338 浏览
添加回答
举报
0/150
提交
取消
