Summer 2019 - CMPT 361 D100

Introduction to Computer Graphics (3)

Class Number: 4801

Delivery Method: In Person


  • Course Times + Location:

    Mo, We, Fr 11:30 AM – 12:20 PM
    AQ 3150, Burnaby

  • Exam Times + Location:

    Aug 7, 2019
    12:00 PM – 3:00 PM
    WMC 3520, Burnaby

  • Prerequisites:

    CMPT 225 and MATH 232 or 240.



This course provides an introduction to the fundamentals of computer graphics. Topics include graphics display and interaction hardware, basic algorithms for 2D primitives, anti-aliasing, 2D and 3D geometrical transformations, 3D projections/viewing, Polygonal and hierarchical models, hidden-surface removal, basic rendering techniques (color, shading, raytracing, radiosity), and interaction techniques.


Computer graphics provides the tools to model 2D, 3D, or higher dimensional data and processes, to generate photorealistic (or at least believable) or artistic rendering of the models, to interact with them through graphical user interfaces, and to create animations for communication, education and entertainment. This course offers an introduction to the modeling and rendering aspects of computer graphics. The mathematical concepts and techniques behind the development of various computer graphics algorithms will be covered. You will also learn to implement some of these algorithms through programming assignments using WebGL, gaining hands-on experience programming things ranging from simple 2D games and creative scene modeling to photorealistic rendering.


  • The graphics pipeline and programmable pipeline
  • Basic raster graphics algorithms for drawing 2D primitives
  • 2D and 3D geometrical transformations, 3D projections/viewing
  • Hidden-surface removal and visibility
  • Basic rendering techniques (illumination & shading,global illumination,ray tracing,texture mapping)
  • Curves and surfaces; polygonal models
  • Antialiasing; sampling and reconstruction
  • Introduction to programming using WebGL and shading language



To be announced the first week of class



Reference Books

  • OpenGL Programming Guide: The Official Guide to Learning OpenGL, Dave Shreiner, Addison Wesley, 9780321552624, 7th Edition
  • OpenGL Shading Language, Rost, Licea-Kane, Ginsburg, kessenich, Lichtenbelt, Malan, Weiblen, Addison Wesley, 2009, 9780321334893
  • WebGL Programming Guide, , 9780133364941
  • JavaScript: The Definitive Guide, , 9780596805524
  • WebGL: Up and Running, , 9781449326487
  • WebGL Beginner’s Guide, , 9781849691727
  • OpenGL ES 2.0 Programming Guide, , 9780321933881


  • Interactive Computer Graphics: A Top-Down Approach with WebGL (7th Edition)
  • Edward Angel, Dave Shreiner
  • Addison Wesley

ISBN: 9780133574845


  • OpenGL: A Primer, E. Angel
  • Addison Wesley
  • 2008
  • 3rd Edition

ISBN: 9780321398116

  • Computer Graphics: Principles and Practice in C,3rd Edition
  • Foley, VanDam, Feiner & Hughes,
  • Addison Wesley

ISBN: 9780321399526

Registrar Notes:

SFU’s Academic Integrity web site is filled with information on what is meant by academic dishonesty, where you can find resources to help with your studies and the consequences of cheating.  Check out the site for more information and videos that help explain the issues in plain English.

Each student is responsible for his or her conduct as it affects the University community.  Academic dishonesty, in whatever form, is ultimately destructive of the values of the University. Furthermore, it is unfair and discouraging to the majority of students who pursue their studies honestly. Scholarly integrity is required of all members of the University.