Home Syllabus Lecture Assignment Example Reference CGPark MyLS

WLU logo

Course Syllabus
CP411 Computer Graphics 2026 Fall (Session A) 12-week course
Department of Computer Science and Physics, Faculty of Science, Waterloo Campus

I acknowledge that in Kitchener, Waterloo, Cambridge and Brantford we are on the traditional territory of the Neutral, Anishnawbe, and Haudenosaunee peoples.

Instructor Information

Instructor: Dr. Hongbing Fan (HBF)
Office: Science Building N2081
Email: hfan@wlu.ca
Weekly Office Hours: After class or by appointment

Course Information

Calendar Description: The principles, algorithms, and techniques of computer graphics. Topics include introduction to graphics hardware, output primitives, two- and three-dimensional geometric transformations, three-dimensional object representation and viewing, illumination models and surface-rendering methods. Graphics software tools will be introduced in this course.

Credit: 0.50

Pre-requisite: CP264 and MA122

Mode of Delivery: in person

Lecture Time: 4:00 pm - 5:20 pm Monday and Wednesday

Classroom: Bricker Academic Building BA110

Course Overview and Approach

Overview: Computer Graphics (CG) involves computer image generation through object modeling, rendering, storage, and synthesis. It has a wide range of applications, including graphical user interfaces, animated movies, video games, and virtual reality. Computer graphics is a well-established and continuously evolving field within computer science and engineering, with deep roots in academia, communities, and industry. This is an introductory course in computer graphics.

The following topics will be covered:

  1. Graphics hardware and software
  2. Graphics pipeline, transformations, culling, clipping, lighting, and shading
  3. Graphics primitives and rendering algorithms
  4. Graphics object modeling and representations
  5. Modeling of curve, surface, and fractal objects
  6. Scene description and representations
  7. Graphics programming with C/C++ and OpenGL
  8. GPU programming with GLSL and CUDA

Approach: This course will be taught through In-person lectures, class Q&A, lecture notes, assignments, and final exam.

In addition to class Q&A, if you have private questions or concerns, email the instructor at hfan@wlu.ca, or talk to the instructor after class or meet by appointments.

Goals and Learning Outcomes

The primary goal of this course is to introduce the concepts, principles, and techniques of computer graphics computing, and to apply them to the design and implementation of computer graphics software and applications. By the end of this course students should be able to

  • Gain a deep understanding of the concepts and principles of computer graphics, including hardware, software, graphics pipelines, transformations, object modeling, and rendering.
  • Design and implement 2D/3D graphics pipelines for object rendering.
  • Design and implement 2D/3D object models.
  • Apply industry-standard graphics libraries for graphics applications.
  • Accelerate graphics computing and general-purpose computing with GPU.

Course Textbooks and Learning Materials

There is no required textook in this course. However, many contents of this coruse are from textbook: Computer Graphics with OpenGL 4/e, Donald Hearn, M. Pauline Baker, and Warren R. Carithers. Book chapter reading is for in-depth reading, not required. Reading provided lecture notes is required.

Provided: lecture notes, reference materials, examples, course-specific software packages.

Tools: Windows PCs with Intel/AMD/NVIDIA GPUs, MinGW C/C++ compiler, OpenGL, VS Code IDE, and Google Colab for GPU programming in CUDA.

Student Evaluation

The learning outcomes will be assessed by the graded tasks with weights given in the following table.

Assessment category Weight
6 assignments 55%
final exam 45%
Total 100%

You must achieve a minimum overall grade of 50% to pass the course.

Final letter grades are obtained by converting the numerical percentage grades by the following table. The instructor reserves the right to adjust the cut-off for final letter grades up or down by 2.0%.

A+ A A- B+ B B- C+ C C- D+ D D- F
90-10085-8980-8477-7973-7770-7267-6963-6760-6257-5953-5750-520-49

Learning Activities, Labs, Assignments, and Examinations

Class participation is mandatory for this course. Class participation will not be recorded or counted towards the final grade.

Assignments will be posted two weeks before their due date and must be completed individually. You are encouraged to discuss assignment problems with your classmates, but you must write your own answers and solutions to assignment questions. You are allowed to use AI tools to assist you in developing solutions. You are responsible for assignment work you submit.

Assignments must be submitted on MyLearningSpace before the deadline. Late or missed submissions will not be marked unless approved by the instructor in advance.

Assignment solutions should be written in the required programming language and style. Programs are marked on correctness, efficiency, style, and documentation. Programming questions will be tested by markers. Programming questions must compile and run correctly to receive marks.

The final exam will be in-person, paper-based, and closed book. The final exam will include multiple-choice and written questions on concepts and theory covered in lectures and assignments.

The Final Examination will be scheduled by the Examinations Office of the University. I will provide you with the date, time, and location as soon as they become available.

Lecture Schedule

Week Day Date Class Topic Reading
1 Mon Sep.14 1 Course introduction, graphics hardware Ch.1, Ch.2, Ch.3
Wed Sep.16 2 Graphics pipeline and software, OpenGL
2 Mon Sep.21 3 OpenGL programming Ch.4, Ch.5, Ch.20
Wed Sep.23 4 Scan conversion for line segments and circles
3 Mon Sep.28 5 Scan conversion for polygons, graphics files Ch.6
Wed Sep.30 6 2D transformations
4 Mon Oct.05 7 3D transformations Ch.7, Ch.8
Wed Oct.07 8 Viewing, projection, clipping
Next general calendar week is reading break, no classes
5 Mon Oct.19 9 Object modeling and representation I Ch.9, Ch.10
Wed Oct.21 10 Object modeling and representation II
6 Mon Oct.26 11 Culling (Hidden surface removal), light and color models Ch.11, Ch.16
Wed Oct.28 12 Lighting and shading
7 Mon Nov.02 13 Animation. Object modeling and representation III -- curve, cubic splines, Bezier curves Ch.17
Wed Nov.04 14 Curve II: Advanced curves, B-Splines, Rational-Splines
8 Mon Nov.09 15 Object modeling and representation IV -- surface Ch.14
Wed Nov.11 16 Texture mapping
9 Mon Nov.16 17 Object modeling and representation V -- fractals Ch.13, Ch.18
Wed Nov.18 18 Shaders and GPU programming with GLSL
10 Mon Nov.23 19 General purpose computing by GPGPU using GLSL, OpenCL, CUDA OpenCL, CUDA
Wed Nov.25 20 Ray tracing
11 Mon Nov.30 21 Graphics scene description, USD WebGL, PyOpenGL
Wed Dec.02 22 WebGL, PyOpenGL
12 Mon Dec.07 23 Final exam review
Final exam time: Saturday,Dec. 13, 8:30 - 10:30 a.m. Location:AC
Wed Dec.09 24 Q & A at N2081 and on Zoom

Lecture schedule is subject to change according to the progress of class.

Course Work Schedule

Job Topic Work Type Weight Due week Due date
a1 Graphics concepts, C++/OpenGL/GLSL individual 5 2 Wednesday, September 23
a2 2D graphics pipeline, SimpleDraw individual 10 4 Wednesday, October 07
a3 3D graphics pipeline, SimpleView - transformations individual 10 6 Wednesday, October 28
a4 3D graphics illumination, SimpleView - lighting, shading individual 10 8 Wednesday, November 11
a5 3D graphics advanced, SimpleView - texture, curve, surface, GLSL individual 10 10 Wednesday, November 25
a6 Ray Tracing, GPU computing with GLSL and CUDA individual 10 12 Monday, December 07

University Course Policies

Laurier has several senate approved policy statements it requires instructors to include in their syllabus. Those with specific wording approved by senate are indicated specifically below.

  1. Academic Calendars: Students are encouraged to review the Academic Calendar for information regarding all services available on campus.
  2. Accessibility: Students with disabilities or special needs are advised to contact Laurier's Accessible Learning Centre for information regarding its services and resources. Review the Registration page for information about intake and documentation requirements. Deadlines: Students are responsible for meeting posted deadlines for registering with Accessible Learning and booking accommodated exams. Accessible Learning cannot guarantee accommodations for requests received after posted deadlines
  3. Plagiarism: the University has approved the following wording for inclusion on all course syllabi about the use of the institutionally supported plagiarism software tool. “Wilfrid Laurier University uses software that can check for plagiarism. If requested to do so by the instructor, students are required to submit their written work in electronic form and have it checked for plagiarism.” (Approved by Senate May 14, 2002)
  4. Academic Integrity: Laurier is committed to a culture of integrity within and beyond the classroom. This culture values trustworthiness (i.e., honesty, integrity, reliability), fairness, caring, respect, responsibility and citizenship. Together, we have a shared responsibility to uphold this culture in our academic and non-academic behaviour. The University has a defined policy with respect to academic misconduct. As a Laurier student you are responsible for familiarizing yourself with this policy and the accompanying penalty guidelines, some of which may appear on your transcript if there is a finding of misconduct. The relevant policy can be found at Laurier's academic integrity website along with resources to educate and support you in upholding a culture of integrity. Ignorance is not a defense.
  5. Late Assignment Policy: Late submissions won't be accepted and marked except under extreme situations. Refer to the Handbook on Undergraduate Course Management.
  6. Final Examinations: Students are strongly urged not to make any commitments (e.g., vacation) during the examination period. Students are required to be available for examinations during the examination periods of all terms in which they register. Refer to the Handbook on Undergraduate Course Management for more information. Refer to the Handbook on Undergraduate Course Management.

Intellectual Property

The educational materials developed for this course, including, but not limited to, lecture notes and slides, assignments and helps, examinations, and any materials posted to MyLearningSpace (exclude reference materials), are the intellectual property of the course instructor. These materials have been developed for student use only and they are not intended for wider dissemination and/or communication outside of a given course.

Posting or providing unauthorized audio, video, or textual material of lecture content to third-party websites violates an instructor's intellectual property rights, and the Canadian Copyright Act.

Recording lectures in any way is prohibited in this course unless specific permission has been granted by the instructor. Failure to follow these instructions may be in contravention of the university's Student Non-Academic Code of Conduct and/or Code of Academic Conduct, and will result in appropriate penalties. Participation in this course constitutes an agreement by all parties to abide by the relevant University Policies, and to respect the intellectual property of others during and after their association with Wilfrid Laurier University.

As a registered student of this course, you are allowed to download and hold all posted teaching materials of this course for your own reference. You are not allowed to disclose the course materials and information (including your solutions) of assignments, labs, examinations to others.

Kitchener/Waterloo campus resources

The University approved the inclusion of information about select wellness and safety services and supports on campus in the course information provided to students. (Approved by Senate November 28, 2011). Specific language (by campus) is provided below.

  1. Waterloo Student Food Bank-All students are eligible to use this service to ensure they’re eating healthy when overwhelmed, stressed or financially strained. Anonymously request a package online 24-7. All dietary restrictions accommodated.
  2. Waterloo Foot Patrol-519.886.FOOT (3668)- A volunteer operated safe-walk program, available Fall and Winter daily from 6:30 pm to 3 am. Teams of two are assigned to escort students to and from campus by foot or by van.
  3. Waterloo Student Wellness Centre519-884-0710, x3146 - The Centre supports the physical, emotional, and mental health needs of students. Located on the 2nd floor of the Student Services Building, booked and same-day appointments are available Mondays and Wednesdays from 8:30am to 7:30 pm, and Tuesdays, Thursdays and Fridays from 8:30 am to 4:15 pm. Contact the Centre at x3146, wellness@wlu.ca or @LaurierWellness. After hours crisis support available 24/7. Call 1-844-437-3247 (HERE247).