私はBox2Dの新機能で、b2ContactListenerの使い方を理解しようとしています。Box2D:複数のb2ContactListenerをワールドに設定していますか? - 変な振る舞いを取得する
複数の連絡先リスナーをワールドに設定することは許可されていますか?私はそう思うだろう。そのような二つの接触のリスナーを設定するときしかし:
world.SetContactListener(listener);
world.SetContactListener(listener2);
を
listener2
は一組だけだったように動作します。何故ですか?
listener
が唯一の接点リスナーが設定したと
listener2
を無視するように
world.SetContactListener(listener2);
world.SetContactListener(listener);
が、それは動作します。 はまた、私は、私はそうのようにリスナーを設定する方法の順序を変更する場合。
これがなぜこのように振る舞うのだろうと思う唯一の理由は、両方のリスナーがBeginContact
とEndContact
のメソッドをオーバーライドして混乱するためです。
私は途中でBox2D(Box2DWeb)のJavaScriptポートを使用しています。しかし、Objective-CやC++の問題の解決法を知っていれば、それらの言語を知っていても問題ありません。