COSC 3P98 Computer Graphics
Instructor: Brian Ross ( bross@brocku.ca )
Lecture hours, Fall 2023: Tues, Fri 11:30-1pm
Location: AS 217
Office hours: TBA
TA: Guangyao Chen ( gchen2@brocku.ca )
Brightspace page for 3P98
Course info
- Course outline
- Course project and marking template.
- Texts (recommended)
-
Computer Graphics with OpenGL (4e)
by D. Hearn, M.P. Baker, W. Carithers. Prentice Hall, 2010. ISBN: 0136053580.
- OpenGL: A Primer (3e) by Edward Angel. Addison-Wesley, 2007, ISBN 9780321398116.
- OpenGL Programming Guide 2e, OpenGL ARB. Addison-Wesley, 2005, ISBN 9780321335739
- The C Programming Language (2e) by Brian W Kernighan and Dennis M Ritchie. Prentice Hall, 1989, ISBN 0131103628.
- Assignment 1 (rev Sept 18, 2023)
- Assignment 2 (rev Oct 20, 2023)
- Assignment 3
- COSC assignment cover page.
- Final exam: Friday December 15, 1900-2200, WCIBDS.
- Old exams.
- Projects:
- Essay option due date: 12 noon, Monday December 18. 2023.
- Animation/programming/ray tracer projects due date: 12:00 noon, Monday January 8, 2024
- Project marking template.
- Supplemental notes on ray tracing: RayTracing.pdf
- Here is an example of formatting for a scientific paper
(abstract, sections, citations, bibliography, etc.):
- Introductory tutorials on compiling 3P98 programs in Visual Studio
- TA: Guangyao Chen
- Location: D205
- Times:
- 12-1pm Wed September 13
- 3-4pm Wed September 13
- Note that both tutorials are identical.
- Online: online tutorial
- A video tutorial is here. However, it might be out of date with current lab installation.
- Bibliography of books shown in class.
Lectures
- Introduction
- OpenGL
- 2D scan conversion
- Mesh surfaces
- Computational geometry
- 2D and 3D Transformations
- 3D Perspective
- Visible Surface Determination
- Light
- Illumination
- Ray Tracing (also see: RayTracing.pdf)
- Textures
- Animation
- Misc: hardware, etc.
_____________________________________
- Fractals
- Splines
Supplemental material
Textbook reading
Read the sections that are relevant to lecture material.
Computer Graphics with OpenGL (Hearn, Baker):
- ch. 1
- ch. 2
- ch. 3: skip sections on concave polys, circles, ellipses
- ch. 4: basic colour, line attributes, irregular fill algs
- ch. 6: basic 2D window setup and GLUT library calls
- ch. 11: GLUT I/O details
- ch. 5: 2D and 3D transformations
- ch. 7: 3D viewing: orthogonal and perspective projections
- ch. 9: visible surface determination
- ch. 10: illumination, textures
- ch. 13: animation
OpenGL Primer (E. Angel)
- Chapters: 1, 2, 3, 4, 5, 6
Assignment programming information
OpenGL:
- 3P98 OpenGL examples
- Windows and Linux
- (updated January 2021): Tutorial for setting up OpenGL, Glut and Freeimage in our lab (Windows, Linux).
- A video tutorial is here. However, it might be out of date with current lab installation!
- Tutorial for setting up OpenGL and FreeGlut for C++ programming.
- Example archive:
Zip file of OpenGL examples, FreeImage example, tutorial, and GLUT and
FreeImage DLL's for Windows.
- Run OpenGL programs on Sandcastle remotely on your Windows PC: instructions.
- OpenGL resources
GLUT:
FreeImage:
Adding sound to games?
Miscellaneous...
Go to Brock Computer Science home page.