Practical Algorithms for

3D Computer Graphics

Second Edition

by Stuart Ferguson

Download

Download the resources associates with the book. Many useful algorithm codes and example programs can be found on this page.

Download the algorithm code here...

Download the OpenFX program installer..

Download the OpenFX source code..

Download the Shaders for the procedural algorithmic textures...
The C codes for these are included in the algorithm download above

GLUT codes (cross platform)

Please also seen the briefing notes that accompany the downloads in this section.

GLUT codes for Windows, OS-X and Linux...
This archive contains code for the Teapot example using the original OpenGL compatibility. (See also the document describing these examples.)

GLUT code for Windows and OS-X (Version 3.3)...
This archive contains a version of teh Teapot example that has been re-worked for the new "Core" mode of OpenGL that is fully compatible with versions 3.3 and later and with no dependencies on deprecated functions. (See also the document describing these examples.)

Teapot example using OS-X native code...
(Use the native Cocoa API and Objective-C code for the teapot example.)

X-windows UNIX template for OpenGL ...
A very simple template to open an X-windows window for OpenGL.

Desktop platforms

Basic OpenGL texturing example code...
This archive contains code that is cross platform and has Visual Studio project files, Xcode project files and Ubuntu-Linux compatible makefile.

Download the Robot Simulator...
(read the associated description document first)

Download the Extended Robot Simulator...
(This uses Phantom hatpic devices)

Download the Metaballs Example..
The program contains a marching cubes implementation to render the metaballs. The archive contains solution files for Visual Studio 2008, 2010 and 2012 (note VS 2012 requries update 1 and special platform settings to make the executable compatible with Windows XP). It also contains a makefile for Ubuntu Linux and an Xcode project file version 4.6 Mac OS-X 10.8.3

Download the OpenGL SanAngeles project for Linux...
(This is modification of the GNU puiblic licensed demonstrator for OpenGL - distributed with the Android NDK. And adapted for use with the GLUT on Linux platforms, includes makefile)

Download the OpenGL SanAngeles project for OS-X...
(This is modification of the GNU puiblic licensed demonstrator for OpenGL - distributed with the Android NDK. And adapted for use with the GLUT on OS-X platforms, includes makefile)

Particle Simulator...
This program demonstrates how to build a particle system designer. The user interface is implemented using the GLUI user interface library. The GLUI and GLUT libraries that are required to build it are included in the archive.  The example uses static builds for the libraries.  Versions for Windows and OS-X are included as are Windows 32 and 64 bit platforms.

3D Terrain Mapping Example..
This program again demonstrates the GLUT and GLUI and makes use of a number of other libraries, especially the HaptiMap library.
(Consult the HaptiMap toolkit website before building this example.)

IOS platform projects

Download the OpenGL SanAngeles project for iPad...
(This is modification of the GNU puiblic licensed demonstrator for OpenGL - distributed with the Android NDK. And adapted for use with IOS, including Xcode project files.)

Download the OpenGL SanAngeles project for iPod and iPhone...
(This is modification of the GNU puiblic licensed demonstrator for OpenGL - distributed with the Android NDK. And adapted for use with IOS, including Xcode project files.)

Download the 3D terrain example project...

Download the GLES basics code..
This is the example from the book demonstrating the basics of using GLES version 1 and version 2.


Android platform projects

Please read the briefing document on developing the Android samples before experimenting with the following programs..

Download the NDK test program...

Download the OpenGL SanAngeles project..
See also the extended briefing document about this project.

Take a look at the HaptiMap example project that uses the NDK and OpenGL to draw a rudimentary line map....

External Libraries

To facilitate your use of the projects that use the GLUT and the GLUI, this section contains sources and builds for these libraries.

Download the source and build for the GLUT for Windows...
(sources and libraries for OS-X and GNU/Linux are included by default with the developer tools for these platforms.)
This is a stub library and associated DLL.

Download the GLUI for Windows...
Static library (.lib)

Download the GLUI for Mac OS-X...
Static library (.a)

 

 

 

Download

Access the book resources on-line

See also the Web Content page with supporting documentation for some of the projects.