0

我在使用box2d的contactlistener时很困惑。现在我有body1和body2。当2个物体接触时,如何确保fixtureA的body是body1或body2?或者我怎样才能确定哪个body属于fixtureA?

我已经进行了实验,并确保了fixtureA的主体不是随机的。这就是我现在可以确保的全部。

好的。也许我应该换一种方式问。现在我可以弄清楚fixtureA的主体是body1,并且每次都可以是body1。但是为什么?为什么不是body2?(body1和body2只是名称,没有顺序。)

4

1 回答 1

1

您无法确保或假设在联系侦听器中对固定装置进行任何排序。在一个非常简单的场景中,通常可以完全预测哪个夹具将是哪个,但是您不应该总是依赖它,而是应该编写程序,就好像顺序是随机的一样。

要检查您在联系侦听器回调中处理的内容,您需要在创建夹具/主体时保留一个指针以进行比较,或者在夹具/主体中设置用户数据以进行检查。您还可以进行其他检查,例如检查夹具的形状,或者它属于什么类型的物体......无论您需要了解夹具以弄清楚如何处理它,都取决于你的游戏。

于 2012-03-12T19:26:29.803 回答