On Sunday, 14 April 2013 at 21:38:49 UTC, Rob T wrote:
Just a wild thought and probably not possible, but if there's a layer in Bullet that provides the core functionality and does not require classes, then you could create a C wrapper for it alone, then build the C++ layer up using D.

--rt

There's been an effort to create a Bullet C API, but it's rather limited at the moment, and I'm hoping to preserve as much of the original OO interface as possible.

If I can automate the generation of bindings to a satisfactory degree, expanding the bindings should be a very simple process, so I could just write bindings for the core functionality and have others expand the bindings as needed. That way, the bindings only contain things that someone will actually use. I think that I'll represent the C++ classes as structs that hold the actual C++ objects as void arrays and contain stub methods that just forward to the C layer. If I can figure out a way to do it, I'd like to alias those stub methods directly to their C counterparts so I can handle cases where inlining won't kick in.

Reply via email to