google / liquidfun

2D physics engine for games
http://google.github.io/liquidfun
4.71k stars 643 forks source link

Particle-polygon collision callback #31

Open cshaa opened 9 years ago

cshaa commented 9 years ago

Is there any way to set up a callback for contact begin/end between particles and Box2D bodies? I've searched the specification but found nothing – the listener is fired only on collisions between Box2D bodies. I'm using the JavaScript version. Thanks a lot, what an amazing library!

stewartmiles commented 9 years ago

The C++ API has BeginContact() and EndContact() on the b2ContactListener class.

http://google.github.io/liquidfun/API-Ref/html/classb2_contact_listener.html

On the Javascript version I don't think we have the bindings implemented in https://github.com/google/liquidfun/tree/master/liquidfun/Box2D/lfjs/jsBindings/Dynamics/Contacts

You could try tackling this yourself if you're ready to hack in some C++.

If you find the listener system too tricky you could try hooking up b2ParticleSystem::QueryShapeAABB

http://google.github.io/liquidfun/API-Ref/html/classb2_particle_system.html#a036f009bf8d329675061aa0687b06bb7 in https://github.com/google/liquidfun/blob/master/liquidfun/Box2D/lfjs/jsBindings/Particle/b2ParticleSystemJsBindings.cpp

We're glad you like our library. Any chance you could share what you're working on?

Thanks, Stewart

On Thu, Oct 30, 2014 at 1:04 PM, Michal Grňo notifications@github.com wrote:

Is there any way to set up a callback for contact begin/end between particles and Box2D bodies? I've searched the specification but found nothing – the listener is fired only on collisions between Box2D bodies. I'm using the JavaScript version. Thanks a lot, what an amazing library!

— Reply to this email directly or view it on GitHub https://github.com/google/liquidfun/issues/31.