Visual studio 在OnTiggerInter2D中,collision.getComponents()引发异常,unity

Visual studio 在OnTiggerInter2D中,collision.getComponents()引发异常,unity,visual-studio,unity3d,Visual Studio,Unity3d,这太奇怪了,我找不到任何人遇到这种情况 有两个box collier 2d,其中一个设置为isTrigger为true。 当长方体A与长方体B碰撞时,OnTriggerEnter2D激发。我可以拿到对撞机的标签。但当我调用getComponents或getComponent时,VS2018说“调用引发了异常:发生了一个或多个错误。” 我会错过什么 从屏幕上看,我想说您正在尝试使用CollizedR2D作为游戏对象。 一定要穿上这件衣服 collision.gameObject.GetCompon

这太奇怪了,我找不到任何人遇到这种情况

有两个box collier 2d,其中一个设置为isTrigger为true。 当长方体A与长方体B碰撞时,OnTriggerEnter2D激发。我可以拿到对撞机的标签。但当我调用getComponents或getComponent时,VS2018说“调用引发了异常:发生了一个或多个错误。”

我会错过什么


从屏幕上看,我想说您正在尝试使用CollizedR2D作为游戏对象。 一定要穿上这件衣服

collision.gameObject.GetComponent()
获取组件和

collision.gameObject.tag
用于标记和

collision.transform
如果您想访问其他游戏对象的变换

另外,我建议您不要使用名称
碰撞
,因为参数是
碰撞器
(它是一个对象)而不是
碰撞
(它是一个动作)


有关更多信息,请参见,该异常上应该有一个
InnerException
-这会产生什么错误?@UnholySheep不知道在哪里可以找到错误消息在发生错误的地方进行尝试捕获。打印错误以及
error.InnerException
error.InnerException.Message
显然,这是一个Unity3d限制,您不能在Visual Studio的监视窗口中使用
GetComponent
。@EhsanMohammadi这不是真的。我已经尝试了这个教程项目,并在观察窗口中得到了我所期望的。谢谢你们的回答。参数名是自动生成的,应该是collier,所以我不需要通过gameObject调用getComponent