Help those suffering in the Horn of Africa

Shaders are the core of the rendering process. OpenGL core profile requires us to provide our own shaders, no more fixed function.

Using shaders means more flexibility, but it also implies more work. This is where this lib steps in.

VSShaderLib was designed to make our life easier. It allows to create programs, load shaders from files, associate vertex attribute names with locations, and work with uniforms, including uniforms in named blocks. It also provides access to the info logs.

G-Truc Creation has been building a samples pack for OpenGL that covers versions from 2.1 up to 4.1 This latest release has reached the 100 samples mark. An invaluable source of code for the newest versions.

One of the features that was not selected to be part of the core functionality was matrix handling. Previously we had OpenGL and GLU functions that provided the means for easily setting the camera, defining projections, and performing geometric transformations on graphical objects.

The Very Simple Matrix Library (VSML) aims at providing users with a functionality similar to the one available up to OpenGL 3.2. I’ve been using OpenGL for a long time and those matrix handling functions served most of my purposes when programming graphics, hence I grew fond of them. I missed them in the new OpenGL versions so I decided to write a simple lib to perform the same tasks in a very similar way.

Learning Modern 3D Graphics Programming is almost an online book on core OpenGL. It covers a lot of ground, from drawing a triangle to HDR. The index promises a continuation onto texturing, render targets, and advanced lighting.

ShaderGen is an old tool from 3D labs, but its usefulness is not gone. The tool creates shaders that mimic the results of a set of fixed function state. There is a large set of options to define a state as available in OpenGL compatibility mode. Lighting, Fog, and all the other features that are gone in core profiles. Select the options you desire, check the result with fixed functionality, and then press “generate”. The tool creates the shaders that emulate those fixed function features. It only produces GLSL 1.2 code, but conversion shouldn’t be an issue.

This is an OpenGL 3.3 + GLSL 3.3 sample that loads and displays a 3D model with Assimp. It also uses DevIL in case the model has textures. It was based on Assimps OpenGL demo and it extends it to support OpenGL 3.3

The sample uses Texturing, Vertex Array Objects, and Uniform Blocks. Camera can move around the object using the mouse, and the mousewheel can be used to zoom on the model, courtesy of freeglut.

GPU Tools | AMD Developer Central.

AMD has an excellent  collection of tools for OpenCL and Shader development in the GPU Tools area. Included are PerfStudio, a performance analysis and debugging tool, and ShaderAnalizer for analysing the performance of individual shaders. Currently they only work with Compatibility Profile, hope an update will cover the more recent versions.

Randi J. Rost, Bill Licea-Kane, Dan Ginsburg, John M. Kessenic, Barthold Lichtenbelt, Hugh Malan, Mike Weiblen

This is the third edition of the orange book. It covers GLSL 1.4 and entry points from OpenGL 3.1. As usual the book is part tutorial, part reference. Very well written, clear and concise. Check out the companion site.

More information about this title at Amazon.com or Amazon.co.uk

© 2013 Lighthouse3d.com Suffusion theme by Sayontan Sinha