dearimgui / dear_bindings

C header (and language binding metadata) generator for Dear ImGui
MIT License
221 stars 12 forks source link

readme: add tested backends #64

Closed shawnhatori closed 6 months ago

shawnhatori commented 6 months ago

I was initially hesitant to use dear_bindings because of the "experimental" designation for the backends. After filing a few minor issues (with quick fixes - thank you @ShironekoBen), the experience was actually super positive. I'm very thankful to this project for allowing me to easily use the awesome ImGui inside my C projects!

The experience has been stable across dear_bindings and imgui changes for the months that I've been using it, and the generated headers have all been nicely readable. Using dear_bindings for Win32, DX11, DX12, OpenGL3, and Vulkan, I have all of these compiling and working within my custom C renderer.

To give back and kickstart the effort to move this beyond experimental, I've added a list of tested backends. I've also depersonalized some of the wording. At least for the backends that I've tested, I think it is in a good state that more people can comfortably start to adopt.

shawnhatori commented 6 months ago

Tangentially, unless it's outside the scope of this project, it may be worth having an official build script similar to what I created here: https://github.com/shawnhatori/dear-imgui-c-build

The only other gotcha I had with dear_bindings was getting all of the files into the right directory structure to compile together, compiling, and then doing it for every backend I wanted to generate. Having an official one (or two, including bash) would make this really easy to use, especially if you can pass it a list of the backends to generate (mine was just hacked together for my own use case).

ShironekoBen commented 6 months ago

Awesome, thanks! It's great to hear that it's working for you.

I've got a little bit of time off over the holiday so I'm planning on doing a bunch of improvements in the near future - whilst I'm not sure that making a script that fits enough compilation scenarios is likely to be practical a simple example/test build script definitely feels like it would be a worthwhile addition. I'll add it to the list!