I'm preparing to add support for context objects to DerelictGL3. Meaning, you'll be able to do something like this:

GLContext!( GLVersion.GL32 ) ctx;
DerelictGL3.load( ctx );   // Load the shared library
DerelictGL3.reload( ctx ); // Load the context-dependent stuff.

The goal is to allow this with a version switch, but to let the current behavior continue as the default. That way, if you don't need or care about context objects, you can keep doing things the way you are now. If you do want context objects, you can use them without the other stuff getting in the way.

The impetus for this came from a recent pull request that I initially rejected but came to find a good idea after giving it some thought. I'll go into the details later when I write some documentation about it. For now, I need help.

The first phase of the change, refactoring the existing architecture, is done except for the testing. If you are a DerelictGL3 user (from DerelictOrg), I need to know if the changes I've made have broken anything. I can attest that a different project I'm working on compiles and runs fine on Windows, but it only uses a subset of OpenGL. I'll be glad to have others verify the same. I can also say that it compiles on Linux (in my VirtualBox installation of 32-bit Mint), but beyond that I haven't a clue. Finally, I have no way to compile or test the Mac side, so I don't know if there are any problems there or not.

If you are currently using DerelictOrg's DerelictGL3, you can test the new branch simply by changing the dependency in your package/dub.json file from "~master" to "~contexts". Then you can let me know the results in the DerelictOrg forum[1] or, preferably, send me a pull request.

Thanks!

[1] http://dblog.aldacron.net/forum/index.php?board=6.0

Reply via email to