Computer Graphics: Modeling

CPSC 524

Spring 2019


Description Contact Info - Grading - Times and Places - Syllabus  - Software and Models



Three-dimensional geometric models are the base data for applications in computer graphics, computer aided design, visualization, multimedia, and other related fields. This course will focus on computerized modeling of 3D geometry, and focus on polygonal meshes, the default 3D shape representation. We will study data structures and algorithms for creating, manipulating, editing and analyzing 3D models.



We will also address recent advances in shape modeling interfaces, shape analysis, and fabrication processes such as 3D printing.


Students are expected to have successfully completed an introductory computer graphics course (e.g. UBC CS 314) or have an equivalent background. An existing knowledge of OpenGL is assumed, although knowledge of a comparable system (such as DirectX) should be sufficient.


More details are provided in the syllabus.


Contact Info


Course Piazza group link.

Alla Sheffer
Office: CICSR x651 e-mail:
Office hours by appointment


TA: Shayan Hoshyari




The grade will be based on a combination of: paper presentation, assignments, final project and class participation (no exam). The final grade will be calculated in the following way and will include a large peer feedback component.

      20% - Class participation

      Includes a mix of: lecture notes, classroom participation, and peer feedback

      15% - Assignment 1: Mesh Subdivision due  Feb 1

      15% - Assignment 2: Mesh Simplification , due Mar 1

      15% - Assignment 3: Mesh Deformation , due Mar 22

      15% - Paper presentation

      Sources for papers include proceedings of SIGGRAPH/SIGGRAPH Asia, Symposium on Geometry Processing (SGP) ,and Eurographics from recent years (links) .

      All students are expected to read the paper in advance and be ready to ask at least one question

      20% - Final project due April 24



Times and Places



Mon & Fri 10:30-12:00,ICICS 246


Software & Models



Software for Mesh Display & Manipulation:

We offer a small but fully functional codebase that you can use as the base data-structure/UI support in your assignments and project. You can download the codebase from this webpage. It is newly developed, and comes with no bug-free guarantees. Our TA is well familair with it, so you can bug him with any problems you encounter.

Other options include Meshlab, libigl, and our older codebase for previous offerings of the course (Cartel). Use these resources at your own responsibility.

To download models to test your code on, check aim@shape. You always want to do initial testing on simple surfaces such as a sphere, a cube, or a plane which you can create/export and view using common tools, such as Meshlab, Graphite, or Paraview.