BBZ308 Computer Graphics

5 ECTS - 3-0 Duration (T+A)- 6. Semester- 3 National Credit

Information

Unit FACULTY OF SCIENCE AND LETTERS
COMPUTER SCIENCES PR.
Code BBZ308
Name Computer Graphics
Term 2025-2026 Academic Year
Semester 6. Semester
Duration (T+A) 3-0 (T-A) (17 Week)
ECTS 5 ECTS
National Credit 3 National Credit
Teaching Language Türkçe
Level Belirsiz
Type Normal
Label C Compulsory
Mode of study Yüz Yüze Öğretim
Catalog Information Coordinator Dr. Öğr. Üyesi Cevher ÖZDEN
Course Instructor
The current term course schedule has not been prepared yet.


Course Goal / Objective

The aim of this course is to enable students to understand basic graphics theory, construct 2D/3D scenes, and develop modern graphical applications. It emphasizes hands-on learning of algorithms and effective use of tools such as OpenGL or WebGL.

Course Content

This course introduces the fundamental principles and mathematical foundations of 2D and 3D computer graphics. Topics include graphics data structures, coordinate systems, transformations, viewing geometry, lighting models, shading techniques, basic animation, and graphics APIs (such as OpenGL, WebGL). Students will apply theory by developing interactive visual scenes and projects.

Course Precondition

None

Resources

Donald Hearn, M. Pauline Baker – Computer Graphics with OpenGL Edward Angel – Interactive Computer Graphics: A Top-Down Approach with WebGL

Notes

three.js, OpenGL, WebGL domentations ShaderToy samples


Course Learning Outcomes

Order Course Learning Outcomes
LO01 Identifies core concepts and applications of computer graphics.
LO02 Applies 2D and 3D coordinate systems and transformations.
LO03 Implements basic drawing algorithms (line, circle, polygon).
LO04 Analyzes viewing geometry and projections.
LO05 Applies lighting and shading techniques.
LO06 Creates basic scenes using graphics APIs like OpenGL/WebGL.
LO07 Uses simple animation techniques and builds interactive scenes.


Relation with Program Learning Outcome

Order Type Program Learning Outcomes Level
PLO01 Bilgi - Kuramsal, Olgusal Gain comprehensive knowledge of fundamental concepts, algorithms, and data structures in Computer Science.
PLO02 Bilgi - Kuramsal, Olgusal Learn essential computer topics such as software development, programming languages, and database management
PLO03 Bilgi - Kuramsal, Olgusal Understand advanced computer fields like data science, artificial intelligence, and machine learning.
PLO04 Bilgi - Kuramsal, Olgusal Acquire knowledge of topics like computer networks, cybersecurity, and database design.
PLO05 Beceriler - Bilişsel, Uygulamalı Develop skills in designing, implementing, and analyzing algorithms
PLO06 Beceriler - Bilişsel, Uygulamalı Gain proficiency in using various programming languages effectively 5
PLO07 Beceriler - Bilişsel, Uygulamalı Learn skills in data analysis, database management, and processing large datasets.
PLO08 Beceriler - Bilişsel, Uygulamalı Acquire practical experience through working on software development projects. 5
PLO09 Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği Strengthen teamwork and communication skills.
PLO10 Yetkinlikler - Alana Özgü Yetkinlik Foster a mindset open to technological innovations.
PLO11 Yetkinlikler - Öğrenme Yetkinliği Encourage the capacity for continuous learning and self-improvement.
PLO12 Yetkinlikler - İletişim ve Sosyal Yetkinlik Enhance the ability to solve complex problems


Week Plan

Week Topic Preparation Methods
1 Introduction to Computer Graphics Overview of CG concepts Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
2 Graphics Systems and Hardware GPU basics Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
3 2D Coordinates & Drawing Algorithms Bresenham algorithm, raster logic Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
4 2D Transformations and Matrix Operations Rotation, scaling, translation Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
5 Basics of 3D Graphics & Coordinates Review of space transformations Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
6 3D Transformations and Viewing Matrices Projection types Perspective vs Orthographic Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
7 Graphics Rendering Pipeline Camera model, cropping Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
8 Mid-Term Exam reviews Ölçme Yöntemleri:
Yazılı Sınav
9 Lighting Models (Phong, Lambert, Ambient) Lighting equation studies Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
10 Shading Techniques Shader basics Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
11 Basic Scene Rendering with OpenGL/WebGL Simple drawing application Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
12 Basic Animation Techniques Frame-based animation Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
13 Interactive Graphics & Input Handling Mouse/keyboard control Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
14 Analysis of Modern Graphics Applications (Game Engines, Data Visualization etc.) Examine the basic features of technologies such as Unity, Unreal Engine, three.js Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
15 Introduction to Shader Programming and Advanced Topics Overview GLSL, WebGL shader examples Öğretim Yöntemleri:
Anlatım, Tartışma, Gösterip Yaptırma
16 Term Exams Final Project Presentations Ölçme Yöntemleri:
Proje / Tasarım
17 Term Exams Final Project Presentations Ölçme Yöntemleri:
Proje / Tasarım


Student Workload - ECTS

Works Number Time (Hour) Workload (Hour)
Course Related Works
Class Time (Exam weeks are excluded) 14 3 42
Out of Class Study (Preliminary Work, Practice) 14 3 42
Assesment Related Works
Homeworks, Projects, Others 5 10 50
Mid-term Exams (Written, Oral, etc.) 1 1 1
Final Exam 1 1 1
Total Workload (Hour) 136
Total Workload / 25 (h) 5,44
ECTS 5 ECTS

Update Time: 06.05.2025 10:34