Win32 + OpenGL bindings
Kapps
opantm2+spam at gmail.com
Sat Apr 20 01:28:31 PDT 2013
On Saturday, 20 April 2013 at 03:26:29 UTC, Diggory wrote:
> I've been trying to write a win32 app using opengl in D, but
> none of the bindings I've found have been sufficient:
>
> - core.sys.windows.windows:
> Missing large parts of wingdi.h, including PFD_* constants,
> ChoosePixelFormat(), SwapBuffers(), wgl*() functions.
>
> - win32.windows:
> Apparantly out of date and gives linker errors, although it
> does declare all the functions needed.
>
> - derelict.util.wintypes:
> Declares a small number of useful windows functions, many of
> which conflict with those declared in
> "core.sys.windows.windows" (such as PIXELFORMATDESCRIPTOR).
> However, "SetPixelFormat" is not declared.
>
> - derelict.opengl.gl:
> Has all of opengl plus wgl* functions needed for windows, but
> has more dependencies than an ideal opengl binding would have.
>
> Why isn't there a simple relationship between C/C++ header
> files and D modules, instead of this weird mix where some
> things are duplicated and others not declared at all?
>
> All of the windows specific functions including wgl* are
> supposed to be in "windows.h", and opengl functions in "gl/gl.h"
>
> It's a shame because I really like the ideas behind D - in fact
> the reason I found it is that I'd come up with a whole bunch of
> ideas I wanted in an ideal language and it turned out D already
> implemented them all...
Deimos has some OpenGL bindings for up to 3.1 core here
https://github.com/D-Programming-Deimos/OpenGL/tree/master/deimos/gl
I also have my own that are up to 4.2 core here
https://bitbucket.org/Kapps/shardgraphics/src (gl.d, glfuncs.d,
gltypes.d, and possibly glfw.d if you need that), which include
loading the function pointers, but there may be some licensing
issues because they're parsed from the OpenGL man pages. Also
there may be some incorrect functions in mine because of parsing
errors.
More information about the Digitalmars-d-learn
mailing list