Tags: jstenhouse/ruby-opengl
Tags
opengl-core 2.0.1 - Slightly tweaked ruby version requirements that'll have no effect until Ruby 3.0, probably. - Missing attribution added for the bit of platform detection code in the Fiddle symbol loader.
opengl-core 2.0.0 - C extensions removed. - Gl module is now GL. You can easily undo this by adding 'Gl = GL' somewhere in your code, but I figure it's probably saner to use GL at this point. - All aux/ types and functions are removed. These are part of the opengl-aux gem, now found at https://github.com/nilium/opengl-aux opengl-core is now 100% raw bindings. - The symbol loader can be swapped out with another, so if Fiddle isn't your bag, you can replace it by changing GL::GLSym.loader to a different loader class. See the comment on GLSym for more info about what a symbol loader must implement and see FiddleSymbolLoader for what is the only implementation currently available. - Using a method that isn't implemented will now raise NoMethodError upon attempting to load it. load_all_gl_commands! will swallow this exception, though I'm not sure it's a great idea to use that when it increases the amount of loaded methods to look up when calling a GL function. - Use - instead of _ in file paths. This simplifies a lot of the code and allows me to keep maintenance of the auxiliary and the OpenGL bindings separate. In other words, this can get updated and you _probably_ don't have to worry about breaking changes to aux types anymore, because the breaking changes to those will happen to another gem. Instead, this gem should _only_ be updated with the addition of new symbol loaders and GL spec updates.
Version 1.3.1 Fixes Texture#unbind -- target argument now optional.
Version 1.3.0 Incremented because the GL commands/enums were updated for GL 4.4.
Version 1.2.0 AKA version pretend-version-1.1.0-never-happened.
Increment to version 1.0.0 Renaming the gem being a breaking change, that's more or less what has to be done.
Fix module methods for Gl module. No longer uses GlEnums/GlCommands modules. GL functions are now wrapped so that they can be overridden if need be. This will probably be necessary just to ruby-ify some bits of the API.