On Thursday, 2 March 2017 at 02:27:03 UTC, Jordan Wilson wrote:


Ah yes, I think you explain the difference between wrapper/binding in one of the Derelict docs.

I'm currently working through a ebook on Game Dev with SFML...the examples are all C++. I don't have any trouble translating it to the equivalent C bindings (so far anyway), but perhaps in the long run using dsfml will be easier (for example, I found using Iup4d easier than the straight C Iup bindings).

Yes, that's what wrappers are for :-) Plenty of people have built wrappers on top of the Derelict bindings. I have my own little SDL and GLFW wrappers I use for throw away projects. Makes the code cleaner and easier on the eyes (C APIs can be ugly).

Jeremy did a great job with DSFML. When I first implemented DerelictSFML, there was a DMD bug on Linux 64-bit that caused crashes when passing structs to functions by value, which bits of the CSFML API require. That made the binding effectively unusable on Linux. Jeremy implemented his own C binding (DSFML-C) which eliminated the pass-by-value bits and then built DSFML on top of that. IIRC the bug has been fixed since then, so I don't know if DSFML is using CSFML directly now or not.

Reply via email to