Was Sie hier wollen, ist eine Sensorhalterung an einem Körper. Aus dem box2d-Handbuch:
Manchmal muss die Spiellogik wissen, wann sich zwei Fixtures überschneiden, aber es sollte keine Kollisionsreaktion geben. Dies geschieht mithilfe von Sensoren. Ein Sensor ist eine Vorrichtung, die eine Kollision erkennt, jedoch keine Reaktion erzeugt.
Sie können jedes Gerät als Sensor kennzeichnen. Sensoren können statisch oder dynamisch sein. Denken Sie daran, dass Sie möglicherweise mehrere Fixtures pro Körper haben und dass Sie eine Mischung aus Sensoren und festen Fixtures haben können.
Sensoren generieren keine Kontaktpunkte. Es gibt zwei Möglichkeiten, um den Zustand eines Sensors zu erhalten:
- b2Contact :: IsTouching
- b2ContactListener :: BeginContact und EndContact
Sie können einstellen, eine Halterung als Sensor und dann schreiben es in Ihren Kontakt Listener. Wenn für ein Fixture das Sensor-Flag auf true gesetzt ist, liefert es Kollisionsdaten, ohne die Kollision physikalisch zu simulieren (dh, es kann mit anderen kollidierenden Fixtures überlappen).
Dies ist ein hilfreiches Tutorial zum Thema Verwenden Sie die Sensoren Ray Wenderlich sensor tutorial
Versuchen Sie, mehr über Sensoren lesen http://www.box2d.org/manual.html – Cyclonecode