Wavefront, Models, Perspectives & Colour

  • Have an indepth understanding of the Wavefront file format
  • Be able to parse and render a wovefront file consisting of multiple entities
  • Be able to integrate alternative perspectives into a single application, and be able to switch perspectives without restarting
  • Have a general understanding of the principles surrounding the colour model in OpenGL
  • Have seen the OpenGL colour Cube in action, and appreciate the shading model.
  • Understand how glColour operates, and in particular the effect of glColour on polygon rendering with SMOOTH shading enabled

Objectives

  • Rework the model classes to be able to load and display multiple entities, consisting of both Triangles and Quads.
  • To do this:
  • Introduce a VertexGroup class to represent the 'default' group
  • Rework Face to adapt to quad/triangle primitives
  • Refactor ModelObject to a more flexible Mesh class
  • Refactor Model to load and render multiple Mesh objects.

Objectives

  • Define an abstraction to represent the projection model
  • Introduce 2 concrete projection classes:
  • Orthographic
  • Perspective
  • Enhance the Orthographic projection to facilitate viewing the scene from different angles
  • Devise a mechanism to enable switchable projection models - at runtime