Foundations of 3D Computer GraphicsHelloWorld2D |
Spec
Code
The purpose of this assignment is to give you experience with programming
simple OpenGL applications. You will also get some initial experience with
programmable shaders.
The starter code will setup a simple OpenGL 3.0 program that uses GLSL.
It demonstrates the basic programming pipeline of this API. The application
draws a single texture mapped square in 2D. There are no 3D concepts
involved.
Included with this code:
- Helpful functions to support openGL
- Functions to deal with images in the "ppm" format.
Main differences from the book's code:
- C++ Structs are used to maintain shaders data and textures.
- C++ smart pointers are used to do automatic memory deallocation
- This code performs proper resource management such as deallocating shaders, buffer objects, and textures appropriately, and gracefully handles runtime errors.