[an error occurred while processing this directive]
The following programs are to be used with NGL 4.0 you can download the library here. These programs are no longer activly maintained, so these are just for reference or if you wish to use any of the old Masters Projects which would have used this code.
A very basic NGL:: and Qt program, generates a simple QtMainWindow to contain a GLWindow widget and draws a teapot from the the ngl::VBOPrimitives class. It also demonstrates the loading of simple shaders and the use of the Camera and Transform stack using GL3.x
|
Demonstrates the NGL::Python bindings using the same program techniques as the above program.
|
Demonstrates the ngl::VBOPrimitives and ngl::TransformStack classes for OpenGL 3.x / 4.x style rendering. No immediate mode OpenGL is used in this demo all transformation are done via our own Matrix Stack and the GLSL shader used for rendering.
|
Shows how the basic OpenGL / NGL::Light class works, uses a special shader to loop for all 8 GL Lights bzr download
|
Shows how the ngl::Spotlight works as well as introducing a new GLSL shader to mimic the Old fixed functionality OpenGL shading pipeline bzr download
|
Shows how the ngl::Camera class works, this uses Vertex Shader to pass throught the Model, View and Projection transforms to the Shaders bzr download
|
A selection of demos for the Shading Models lecture
|
A simple demo to show how to use the ngl::Obj class to load a mesh and a texture. Also demonstrates how to go into the Qt showFullScreen mode and back to a windowed app.
|
Several demos showing how to use different textures in OpenGL and glsl
|
Several demos showing collision detection for Ray-Sphere, Ray-Triangle, Sphere-Sphere, Sphere-Plane
|
Several demos particle systems, two simple geometry ones and one using PointSprites
|
This Demo demonstrates how to select objects using Colour picking
|
A simple demo showing how to draw Face and Vertex Normals using Geometry Shaders
|
Added frustum culling to the ngl::Camera class, this demo shows how to use it, most of the code is based on the article here
|
Simple particle system demonstrating runtime polymorphism
|
This demo shows how to do game style control and movement of an object in Qt, read the blog post here for more details
|
A different approach to game key control, this method is more complex but uses less dynamic memory allocation and also allows for the keystrokes to be recorded and played back.
|
The shows how to use affine transforms in NGL as well as how to build a full Qt GUI app
|
This is the code to acompany the Video Tutorial here
|
This demonstrates a simple RK4 spring, based on the code / blog here
|
This demonstrates loading in a Mesh (obj) and PointBake animation data from my Maya Exporter ( see here ). The basic principle is load an Obj Mesh, then the PointBake per frame animation data, then we update the verts per frame. see NGL::PointBake class for more details and also this blog post.
|
This demonstrates loading in a PointBake animation data from my Maya Exporter ( see here ). Then use the actual PB data to visualize the mesh (see blog post here)
|
Two demos showing how to use the new ngl::VertexArrayObject class
|
This demo uses the ngl::Obj and ngl::VertexArrayObject classes to read in a mesh then construct an extended VAO passing in Tangents and Bi-Tangents (BiNormals) to glsl as attributes. This is then used to do normal mapping along the lines of this It also has code to implement Maya style controls
|
[an error occurred while processing this directive]