www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - New DerelictGL3 Branch Needs Testing

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
Mar 09 2014