Useful Links

OpenGL Main Hub:

OpenGL and GLSL Tutorials:

  • www.lighthouse3d.com : A site dedicated to 3D Computer Graphics. Contains many introductory articles on CG Problems and Algebra. Also includes OpenGL and GLSL tutorials.

  • nehe.gamedev.net : A comprehensive but slightly out-dated suite of OpenGL and GLSL tutorials which you'll find useful. Hosted by GameDev.

Programming Languages:

  • www.cplusplus.com : An in-depth documentation of the C++ Programming Language. Includes API Documentation for the Standard Template Library(STL) and many useful tutorials.

  • www.cprogramming.com : Another very useful site on C and C++ programming. Includes many tutorials and examples with OpenGL.

Coding Resources

Libraries:

  • GLUT Library : GLUT is the OpenGL Utility Toolkit, a window system independent toolkit for writing OpenGL programs. It implements a simple windowing application programming interface (API) for OpenGL.

  • FreeGLUT Library : FreeGLUT is an open source alternative to the out-dated OpenGL Utility Toolkit (GLUT) library.

  • GLEW Library : The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform.

Frameworks:

  • Qt Framework : Qt is an advanced cross-platform application framework that is widely used for developing application software with a graphical user interfaces (GUI). Also contains modules for OpenGL and GLSL. It is a more advanced alternative to GLUT and FreeGLUT Toolkits. Documentation,API & Tutorials are provided in the web-site.

Programming Environments & Compilers:

  • MinGW : Stands for Minimalist GNU for Windows. MinGW is a native software port of the GNU Compiler Collection (GCC) and GNU binary utilities for use in the development of native Microsoft Windows applications. It includes C/C++ compilers which you may use as an alternative on Windows.

  • Cygwin : Cygwin is a Unix-like environment and command-line interface for Microsoft Windows. Cygwin provides native integration of Windows-based applications, data, and other system resources with applications, software tools, and data of the Unix-like environment. You may use C/C++ compilers of Cygwin to develop C++/OpenGL applications on Windows.

  • Microsoft Visual C++ : Visual C++ (often abbreviated as MSVC or VC++) is a commercial, integrated development environment (IDE) product for C, C++, and C++/CLI programming languages. It has tools for developing and debugging C++ code. And has its own C/C++ compiler(VC++). We strongly suggest that you use Visual C++ 2005(VC++ 8.0) Professional version throughout this course due to its simplicity and stability. However you may also use Visual C++ 2010 Express edition which can be downloaded from the link provided.

  • Bloodshed Dev-C++ : Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C and C++ programming languages. It uses the MinGW port of the GCC as its compiler. Dev-C++ can also be used in combination with Cygwin or any other GCC-based compiler.

  • Code:Blocks : Code::Blocks is another free and open source, cross-platform IDE which supports multiple compilers including GCC and MSVC. It is similar to Bloodshed Dev-C++.

  • Eclipse CDT (C/C++ Development Tooling) : Eclipse CDT is a fully functional C and C++ Integrated Development Environment based on the Eclipse platform. It also uses the MinGW GNU Compiler Collection(GCC).