我正在Unity3d中制作2D游戏,我需要获取BoxCollider2D
size.x
值。正如文档所说,我只需size = BoxCollider2D.size.x
就可以得到一个盒子的大小,但它不起作用!控制台说An object reference is required to access non-static member 'UnityEngine.BoxCollider2D.size'
.我尝试将大写字母更改为小字母,尝试使用 GetComponent 方法,尝试创建组件变量并在检查器中定义它。所有这些都不起作用。求求你,帮帮我!
您需要引用包含BoxCollider2D
的GameObject
或其Collider
。获得参考后,默认情况下您可以访问BoxCollider2D
。
BoxCollider2D col = gameObject.collider2D as BoxCollider2D;
int x = col.size.x;
你可以使用GetComponent()
,但是一旦你有了所需的GameObject
,这是矫枉过正的,而应急编码员的答案没有提到。
您需要引用 BoxCollider2D 组件。
例如 var size = GetComponent<BoxCollider2D>().size.x;