G3D 9.00 Library

CS 371 projects use the G3D library as a common support code base. We use the svn top-of-tree for version 9.00 beta 01 of the library. This is installed on the lab Macs. You can also build G3D for your home Windows, OS X, or Linux computer but this is not supported.




OpenGL and GLSL

Your shader programs will be in GLSL version 1.5. G3D is based on OpenGL 3.2. Beware that newer specifications exist but are not yet supported by most hardware. The newer versions of GLSL are mostly backwards compatible.

The official print manuals for OpenGL (which I do not recommend) are:

C/C++ Language

C++ blends low-level machine control with high-level programming constructs. It is a complex language and I recommend using only a subset if this is your first time programming in C++. Avoid most of the C++ standard library and don't create your own templates or macros. Use G3D::Array instead of C-arrays, std::string instead of C-strings, and G3D::ReferenceCountedPointer (e.g., Texture::Ref) or references (&) instead of C-pointers.