Course detail

Computer Graphics Principles

FIT-IZGAcad. year: 2022/2023

Overview of fundamental principles of computer graphics (vector and raster based) and his consequence for real graphical applications. Basic operations to be performed in 2D and 3D computer graphics. Specification of principles and usage of main graphical interfaces. Methods and algorithms for drawing lines, circles and curves (Bezier and NURBS) in 2D. Principles of closed areas clipping and filling. Methods and solutions for 2D/3D object transformations, visibility problem, lighting, shading and texturing. Basics of the photorealistic rendering of 3D scenes. Different methods of 3D geometry representation. Alias in computer graphics and antialiasing methods.

Language of instruction

Czech

Number of ECTS credits

6

Mode of study

Not applicable.

Learning outcomes of the course unit

  • The student will get acquainted with the basic principles of 2D and 3D computer graphics.
  • The student will learn the fundamentals of using main graphical programming interfaces.
  • He/she will get acquaint with algorithms for rasterisation and clipping of 2D graphics primitives and filling of closed regions.
  • He/she will learn algorithms for 2D and 3D transformations, visibility solution, lighting, shading and texturing.
  • The student will learn the fundamentals of the photorealistic rendering of 3D scenes.
  • He/she will get acquainted with different techniques of 3D objects geometry representation.
  • He/she will get acquainted with sources of alias and basics of antialiasing methods.
  • He/she will practice implementation of vector and raster based graphics algorithms.

Prerequisites

   - It is essential to have basic knowledge of programming in C language.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

  • Project - 20 points.
  • Evaluated laboratory tasks, 6 x 3 bodů - 18 points.
  • Midterm test - 10 point.
  • Final written examination - 52 points.
  • Minimum for the final written examination is 20 points.
  • Minimum to pass the course according to the ECTS assessment - 50 points.

Course curriculum

Not applicable.

Work placements

Not applicable.

Aims

To provide an overview of the basics principles of 2D and 3D computer graphics. To get acquainted with the vector-based object representation and drawing. To learn methods of 2D objects rasterisation and clipping, 2D closed areas filling, 2D and 3D transformations, visibility problem solutions, lighting, shading and texturing. To get acquainted with the basic principles of main 2D and 3D graphical interfaces. To overrule the implementation issues in real graphical applications.

Specification of controlled education, way of implementation and compensation for absences

  • The project needs to be submitted to the faculty information system and is evaluated at the end of the semester.
  • Laboratory tasks are evaluated during them.
  • Midterm and final written exams.
  • In justified cases, it is possible to accomplish laboratories on another date, and the mid-term exam by extending the final exam.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Beneš, B., Sochor, J., Felkel, P., Žára, J.: Moderní počítačová grafika, 2. vydání, ComputerPress, 2005 (CS)

Recommended reading

Hughes, John F., et al., Computer Graphics: Principles and Practice, Third Edition, Addison-Wesley, 2014
Lengyel, E.: Mathematics for 3D Game Programming and Computer Graphics, Third Edition, 3rd Edition, 2012
Watt, Alan H., 3D Computer Graphics, 3rd Edition, Addison-Wesley, 1999. 
Gomes J., et al., Computer Graphics: Theory and Practice, CRC Press, 2012.
Sellers, G., et al., OpenGL Superbible: Comprehensive Tutorial and Reference, 7th Edition, 2015.
Course slides and lecture recordings (EN)
Materiály k přednáškám a video záznamy přednášek (CS)

eLearning

Classification of course in study plans

  • Programme BPC-AUD Bachelor's

    specialization AUDB-ZVUK , any year of study, summer semester, elective
    specialization AUDB-TECH , any year of study, summer semester, elective

  • Programme BPC-AMT Bachelor's, any year of study, summer semester, elective
  • Programme BPC-EKT Bachelor's, any year of study, summer semester, elective
  • Programme BPC-IBE Bachelor's, any year of study, summer semester, elective
  • Programme BPC-MET Bachelor's, any year of study, summer semester, elective
  • Programme BPC-SEE Bachelor's, any year of study, summer semester, elective
  • Programme BPC-TLI Bachelor's, any year of study, summer semester, elective

  • Programme VUB Bachelor's

    branch VU-D , 2. year of study, summer semester, elective
    branch VU-D , 2. year of study, summer semester, elective
    branch VU-D , 2. year of study, summer semester, elective
    branch VU-VT , 2. year of study, summer semester, elective
    branch VU-VT , 2. year of study, summer semester, elective
    branch VU-VT , 2. year of study, summer semester, elective
    branch VU-VT , 2. year of study, summer semester, elective
    branch VU-VT , 2. year of study, summer semester, elective
    branch VU-VT , 2. year of study, summer semester, elective
    branch VU-IDT , 2. year of study, summer semester, elective
    branch VU-IDT , 2. year of study, summer semester, elective
    branch VU-IDT , 2. year of study, summer semester, elective
    branch VU-IDT , 2. year of study, summer semester, elective
    branch VU-IDT , 2. year of study, summer semester, elective
    branch VU-IDT , 2. year of study, summer semester, elective
    branch VU-IDT , 2. year of study, summer semester, elective

  • Programme IT-BC-3 Bachelor's

    branch BIT , 2. year of study, summer semester, compulsory

  • Programme BIT Bachelor's, 2. year of study, summer semester, compulsory
  • Programme BIT Bachelor's, 2. year of study, summer semester, compulsory
  • Programme BAK-MIn Bachelor's, 2. year of study, summer semester, elective

Type of course unit

 

Lecture

39 hours, optionally

Teacher / Lecturer

Syllabus

  1. Raster and vector graphics. Colours and colour models. Colour space reduction and black&white images.
  2. Rasterisation of basic vector primitives.
  3. Closed area filling.
  4. Transformations in 2D and 3D.
  5. Basics of 3D scene visualization, 3D transformations and projections.
  6. Introduction to 2D graphics API and a minimalistic 2D graphic application.
  7. Antialiasing. Clipping in 2D and 3D.
  8. Curves in computer graphics.
  9. 3D object representations.
  10. Local illumination models and smooth surface shading. Introduction to the OpenGL library.
  11. Visibility problem in 3D.
  12. Textures and texturing. Modern computer graphics and principles of 3D graphics API.
  13. Basics of photorealistic rendering, raytracing and radiosity.

Exercise in computer lab

12 hours, optionally

Teacher / Lecturer

Syllabus

  1. Colour space reduction.
  2. Basic 2D object rasterisation.
  3. Filling of 2D closed regions.
  4. 3D transformations.
  5. Visualization of 2D spline curves.
  6. 3D scene visualization and OpenGL basics.

Project

14 hours, optionally

Teacher / Lecturer

Syllabus

Thematically oriented individual project.

eLearning