# FI:PB009 Principles of Computer Graphic - Course Information

## PB009 Principles of Computer Graphics

**Faculty of Informatics**

Spring 2024

**Extent and Intensity**- 2/1/0. 3 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).

Taught in person. **Teacher(s)**- RNDr. Katarína Furmanová, Ph.D. (lecturer)

RNDr. Jan Byška, Ph.D. (seminar tutor)

Mgr. Marek Trtík, Ph.D. (seminar tutor) **Guaranteed by**- doc. RNDr. Barbora Kozlíková, Ph.D.

Department of Visual Computing – Faculty of Informatics

Contact Person: RNDr. Katarína Furmanová, Ph.D.

Supplier department: Department of Visual Computing – Faculty of Informatics **Timetable**- Tue 14:00–15:50 D2
- Timetable of Seminar Groups:

*J. Byška*

PB009/02: each odd Thursday 16:00–17:50 B311,*J. Byška*

PB009/03: each even Thursday 12:00–13:50 B311,*J. Byška*

PB009/04: each odd Thursday 12:00–13:50 B311,*J. Byška*

PB009/05: each even Thursday 10:00–11:50 B311,*M. Trtík*

PB009/06: each odd Thursday 10:00–11:50 B311,*M. Trtík* **Prerequisites**- The knowledge of matrix calculus, linear algebra, geometry, and basic programming skills.
**Course Enrolment Limitations**- The course is also offered to the students of the fields other than those the course is directly associated with.

The capacity limit for the course is 150 student(s).

Current registration and enrolment status: enrolled:**59**/150, only registered:**0**/150, only registered with preference (fields directly associated with the programme):**0**/150 **fields of study / plans the course is directly associated with**- there are 57 fields of study the course is directly associated with, display
**Course objectives**- The aim of the course is to give the students an overview of the basic algorithms and methods for rendering and data representations used in computer graphics. The gained knowledge will enable the students to understand a vast range of computer graphics tasks, including their mathematical background. Within the seminars, students will implement selected basic algorithms explained in the lectures. Therefore, at least basic programming skills are required.
**Learning outcomes**- After finishing the course, the students

- will orient themselves in a broad spectrum of computer graphics problems;

- will understand the underlying math foundations and programming principles in computer graphics;

- gain practical knowledge in programming selected algorithms. **Syllabus**- Introduction to computer graphics and its application areas.
- Differences between raster and vector graphics.
- Basic graphical primitives and algorithms for their rasterization. Sampling, reconstruction, antialiasing.
- Algorithms for closed area filling.
- Representation and modeling of 3D objects.
- Curves and surfaces.
- 2D and 3D transformations, projection.
- Clipping.
- Visibility, scene hierarchy representation.
- Color, color models, color perception.
- Basic lighting models, shading, texturing.
- Ray tracing, basics of photorealistic and physically-based rendering.

**Literature**- ŽÁRA, Jiří, Bedřich BENEŠ, Jiří SOCHOR and Petr FELKEL.
*Moderní počítačová grafika (Moder Conmputer Graphics)*. 2nd ed. Praha: Computer Press, 2005, 609 pp. I 1. ISBN 80-251-0454-0. info - MARSCHNER, Steve and Peter SHIRLEY.
*Fundamentals of Computer Graphics: International Student Edition*. 5th edition. A K Peters/CRC Press, 2021. ISBN 0-367-50503-7. info - HUGHES, John F., Andries VAN DAM, Morgan MCGUIRE, David F. SKLAR, James D. FOLEY, Steven K. FEINER and Kurt AKELEY.
*Computer Graphics: Principles and Practice*. 3rd edition. Addison-Wesley Professional, 2013. info

- ŽÁRA, Jiří, Bedřich BENEŠ, Jiří SOCHOR and Petr FELKEL.
**Teaching methods**- Theoretical lectures covering the fundamentals, methods, and algorithms of computer graphics. Seminar work is focused on the programming of selected algorithms and solving theoretical tasks. Students will be provided with a CMake C++ project. Solving a programming task then requires implementing a selected algorithm into clearly marked places in the project. Students will work on five compulsory assignments, introduced and explained at the seminars. Study materials will include lecture slides, recordings of lectures, and recommendations for further reading on specific topics (however, the content of these additional materials won't be required at the exam).
**Assessment methods**- Five programming assignments (introduced at the seminars) completed within the given deadlines (30% of the grade). Final written exam (70% of the grade).
**Language of instruction**- English
**Further comments (probably available only in Czech)**- Study Materials

The course is taught annually. **Listed among pre-requisites of other courses****PV255**Game Development I

PB009 && PV112 && (PB161 || PB162)

**Teacher's information**- All materials will be available in the Information system.

- Enrolment Statistics (recent)

- Permalink: https://is.muni.cz/course/fi/spring2024/PB009