Public View

You are viewing the public version of the syllabus. If you have a SUNet account, you can view the richer version of the syllabus after logging in.

Computer Graphics
CS 405

Faculty: Faculty of Engineering and Natural Sciences
Semester: Fall 2025-2026
Course: Computer Graphics - CS 405
Classroom: FASS-G062
Level of course: Undergraduate
Course Credits: SU Credit:3.000, ECTS:6, Basic:2, Engineering:4
Prerequisites: CS 300
Corequisites: CS 405L
Course Type: Lecture

Instructor(s) Information

Selim Saffet Balcısoy

Course Information

Catalog Course Description
This course is an introduction to computer graphics, modeling, animation, and rendering. Topics covered include basic image processing, geometric transformations, geometric modeling of curves and surfaces, animation, 3-D viewing, visibility algorithms, radiosity, ray tracing, shading and volume rendering. Students gain experience by developing their own graphics programs producing simple animations.
Course Learning Outcomes:
1. (a) master introductory computer graphics techniques;
2. (b) implement a working 3D game/simulation in OpenGL;
3. (c) prepare a 3D game/simulation proposal;
4. (d) present to progress of the game development in three demo sessions;
5. (e) implement four basic and four advanced graphics techniques into the game project;
6. (f) implement a simple graphics engine;
7. (g) use technical manuals, online resources and books to interpret graphics techniques and effects;
8. (h) be an effective member of a team;
9. (i) present technical matter to a large audience of game company executives;
10. (j) complete a working to a deadline.
Course Objective
By the end of the course, students will be able to:
-Implement image-based geometry extraction (lines, splines, perspective).
-Develop shaders for non-photorealistic rendering inspired by artworks.
-Apply physically based rendering techniques in WebGL/WebGPU.
-Use asset pipelines (glTF) to import and render 3D models.
-Implement simple animations to bring static models to life.
-Build end-to-end interactive graphics applications demonstrating rendering algorithms.
Sustainable Development Goals (SDGs) Related to This Course:
Decent Work and Economic Growth

Course Materials

Resources:
Peter Shirley, "Ray Tracing in One Weekend" (online book)
Peter Shirley and Steve Marschner, "Fundamentals of Computer Graphics" (4th Edition).
Tomas Akenine-Möller, Eric Haines, Naty Hoffman, "Real-Time Rendering" (4th Edition).
Technology Requirements:
The following tools and libraries will be used in the course:
WebGL & WebGPU: Low-level browser graphics APIs for real-time rendering.
Three.js: A JavaScript library for high-level 3D graphics development.
GLSL/WGSL: Shader programming languages for GPU rendering.
Blender: Open-source 3D modeling and animation software for asset creation.
glTF 2.0: Open standard format for efficient 3D model transmission.
GitHub: For version control and project submissions.

Representative Links to Resources:
WebGL Fundamentals: https://webglfundamentals.org/
WebGPU Specification: https://gpuweb.github.io/gpuweb/
Three.js Documentation: https://threejs.org/docs/
Blender Official Website: https://www.blender.org/
glTF 2.0 Overview: https://www.khronos.org/gltf/
GitHub Student Pack: https://education.github.com/pack