Help end child hunger
Feb 212012

The updated version of GLSL tutorial. Only the core version will be dealt in this tutorial.

The tutorial is, and will be in the near future, in construction. I don’t plan to close it, at least in the near future, unless a new version of OpenGL changes everything again.

I’ll be adding content from time to time, initially to get the base complete, and afterwards to provide examples.

The tutorial does not intend to replace the specs as THE source to fully grasp GLSL and OpenGL. The specs are essential, but can be hard to start learning. So consider the tutorial as a gentle introduction to the theme.

As always, your cooperation is a must to get things right. Tutorials always have bugs, mistakes, and things that are not clearly explained. Furthermore, I might get somethings wrong, but please be gentle :) Your feedback is important.

Well, this is it. Have fun playing with GLSL and OpenGL!

Move on to the Index.

Feb 122012

VS*L has been updated to allow cube maps to be loaded as textures. Tangents and bitangents are also provided for every loaded model. The models default texture, the texture definitions of the loaded model, can now be replaced by any pre loaded texture.

Jan 292012

VSMathLib, a part of the Very Simple Libraries framework, has suffered a minor update. The modelview matrix has been split into two matrices: model and view. The modelview matrix is still available, but now it is a computed matrix. The programmer should use the two individual matrices, model and view, and the lib will compute the modelview, actually called VIEW_MODEL, as required.

The PROJMODELVIEW has been renamed to PROJ_VIEW_MODEL since this is the actual order of the matrix multiplication.

Besides that the lib works as usual. Comments are most welcome as usual.

Jan 022012

Very Simple OpenGL Information Lib – OpenGL has a rich set of functions to query its state. It is possible to get information on just about anything, from which shaders are attached to a program, to the values of uniforms, or the properties of the textures currently bound.

However, it is also true, that to get some of this information a lot of code is required. When debugging, we end up writing code to access this and that information over and over again.

This lib attempts to provide all the information with a minimal effort to the developer, for textures, buffers, GLSL programs, shaders, and variables, and a few more items.

Dec 152011

One of the bugs reported in here has been corrected. The uniform buffer data size is now reported correctly.

The other two bugs remain, unfortunately. Querying the primitive counter still gives zero, and glEnable(GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB) still crashes the application.

Dec 092011

VSML has been renamed to VSMathLib. Too many libs in the pipeline to keep naming them with a single letter :-)

The M stood for Matrix, yet as now the library also contains vector operations, I think the new name fits better with the content.

Another addition is the availability of the normal and projection-view-model matrices. These are commonly used in shaders, and it doesn’t make sense to keep computing it for every vertex.

Finally, the lib now works with the VSShaderLib to provide a more general method for uniform variable settings.

Bug reports are most welcome.