IntroductionPrerequisiteCourse StaffResourcesCourse Schedule |
Principal Instructor: KangKang Yin
Guest Instructor:
Teaching Assistant: Mahdi Davoodikakhki
<mahdi_davoodikakhki@sfu.ca>
Recommended Textbook: " Interactive Computer Graphics: A Top-Down Approach with Web GL, 7th Edition", by Edward Angel and Dave Shreiner.
Reference books: OpenGL Programming Guide: The Official Guide to Learning OpenGL; Computer Graphics: Principles and Practice
The OpenGL Programmer's Guide (the Redbook) 8th Edition;
OpenGL ES 3.0 Programming Guide;
WebGL Programming Guide;
WebGL Beginner's Guide;
WebGL: Up and Running;
JavaScript: The Definitive Guide
Week | Monday | Wednesday | Friday |
1 |
|
Jan
2 Welcome Day, no class |
Jan
4 Introduction (Chapter 1.1) |
2 | Jan
7 Image Formation (Chapters 1.2-1.5) |
Jan
9 Image Formation (Chapters 1.2-1.5) |
Jan
11 Graphics Pipeline (Chapters 1.6-1.10) |
3 | Jan
14 Hello Triangle (Chapters 2.1-2.3) Common triangle.html triangle.js triangle2.html triangle2.js vshader.glsl fshader.glsl |
Jan
16 GLSL (Chapters 2.4-2.6) GLSL Functions |
Jan
18 Writing Shaders (Chapters 2.7-2.10, A.1-A.2) WebGL 2.0 and GLSL ES 3.0 API Quick Reference WebGL 2.0 Specification |
4 | Jan
21 Interaction and Animation (Chapters 3.1-3.6) |
Jan
23 Interaction and Animation (Chapters 3.7-3.11) Programming Assignment 1 Release |
Jan
25 Programming Tutorial triangleMany.html triangleMany.js |
5 | Jan
28 Geometric Objects (Chapters 4.1-4.2, B.1-B.4) |
Jan
30 Coordinate Systems (Chapaters 4.3,4.7) |
Feb
1 Transformations (Chapters 4.9-4.11) |
6 | Feb
4 Transformations (Chapters 4.9-4.11) |
Feb
6 Transformations (Chapters 4.9-4.11) |
Feb
8 Modeling (Chapters 4.6,4.12-4.13) |
7 | Feb
11 Viewing (Chapters 5.1-5.3) Programming Assignment 1 Due |
Feb
13 Projection Matrices (Chapters 5.4-5.8) |
Feb
15 Projection Matrices (Chapters 5.4-5.8) Writing Assignment Release |
8 | Feb
18 Reading Break, no class |
Feb
20 Reading Break, no class |
Feb
22 Reading Break, no class |
9 | Feb
25 Projections and Shadows (Chapters 5.9-5.11) |
Feb 27 Lighting and Shading (Chapters 6.1-6.4,6.7) |
Mar
1 Polygonal Shading (Chapters 6.5,6.8,6.10) Programming Assignment 2 Release |
10 | Mar
4 Programming Assignment I Review; Programming Assignment II Tutorial |
Mar
6 Discrete Techniques (Chapters 7.1-7.2) Writing Assignment Due |
Mar
8 Texture Mapping (Chapters 7.3-7.6) |
11 | Mar
11 Texture Mapping (Chapters 7.3-7.6) |
Mar
13 Environment&Bump Mapping (Chapters 7.7-7.9) |
Mar
15 Framebuffer Objects (Chapters 7.12-7.14) |
12 | Mar
18 Blending and Antialiasing (Chapters 7.10, 8.12) |
Mar
20 Hierarchical Modeling (Chapters 9.1-9.6) |
Mar
22 Scene Graphs (Chapters 9.7-9.9) Programming Assignment 2 Due Programming Assignment 3 Release |
13 | Mar 25 Clipping (Chapters 8.1-8.7) |
Mar 27 Rasterization and Hidden Surface Removal (Chapters 8.8-8.11,9.10) |
Mar 29 Ray Tracing (Chapters 12.1-12.4) |
14 | Apr
1 Assignments Review |
Apr
3 Review and Discussion (Chapter 8.2) |
Apr
5 No Class (Field trip 3-5pm: Nexus Media) |
15 | Apr
8 No Class Programming Assignment 3 Due |
Apr
10 Exam: 3:30-5:30pm SSCB 9201 Biology |
|
Exam Week |