ImGUI OpenGL (modern OpenGL with shaders / programmatic pipeline) Implementation
Implementation based on the imgui examples implementations. Feel free to use and modify this implementation. This needs to be used along with a Platform Binding (e.g. GLFW, SDL, Win32, custom..)
HACK: To be honest, there are a lot of things to optimize in here if you have control of every step.
Procs
proc igOpenGL3Init(): bool {...}{.raises: [], tags: [].}
- Initiate Opengl, this proc does nothing here because I assume that you are using modern opengl 3.2>. If you actually need to use lower specs open and issue or PR the fix please.
proc igOpenGL3NewFrame() {...}{.raises: [Exception], tags: [RootEffect, WriteIOEffect].}
proc igOpenGL3RenderDrawData(data: ptr ImDrawData) {...}{.raises: [Exception], tags: [RootEffect].}
proc igOpenGL3Shutdown() {...}{.raises: [Exception], tags: [RootEffect].}