PB009 Principles of Computer Graphics

Faculty of Informatics
Spring 2023
Extent and Intensity
2/1/0. 3 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
Teacher(s)
doc. RNDr. Barbora Kozlíková, Ph.D. (lecturer)
Ing. Matěj Lang (seminar tutor)
Mgr. Jonáš Rosecký (seminar tutor)
RNDr. Vojtěch Brůža (seminar tutor)
RNDr. Jan Byška, Ph.D. (lecturer)
RNDr. Katarína Furmanová, Ph.D. (lecturer)
Mgr. Marek Trtík, Ph.D. (lecturer)
Mgr. Oldřich Pecák (seminar tutor)
Mgr. Matúš Talčík (seminar tutor)
Guaranteed by
doc. RNDr. Barbora Kozlíková, Ph.D.
Department of Visual Computing – Faculty of Informatics
Contact Person: doc. RNDr. Barbora Kozlíková, Ph.D.
Supplier department: Department of Visual Computing – Faculty of Informatics
Timetable
Tue 14. 2. to Tue 9. 5. Tue 10:00–11:50 D1
  • Timetable of Seminar Groups:
PB009/01: Tue 14. 2. to Tue 9. 5. each odd Tuesday 14:00–15:50 B311, J. Rosecký
PB009/02: Tue 21. 2. to Tue 2. 5. each even Tuesday 14:00–15:50 B311, J. Rosecký
PB009/03: Tue 14. 2. to Tue 9. 5. each odd Tuesday 12:00–13:50 B311, J. Rosecký
PB009/04: Tue 21. 2. to Tue 2. 5. each even Tuesday 12:00–13:50 B311, J. Rosecký
PB009/05: Wed 15. 2. to Wed 10. 5. each odd Wednesday 8:00–9:50 B311, O. Pecák
PB009/06: Wed 15. 2. to Wed 10. 5. each even Wednesday 8:00–9:50 B311, O. Pecák
Prerequisites
The knowledge of matrix calculus, linear algebra, and geometry, 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: 48/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 modeling and rendering. 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.
  • Basic graphical primitives and algorithms for rasterization, differences between raster and vector graphics.
  • Sampling, reconstruction, antialiasing, algorithms for closed area filling.
  • 2D clipping.
  • Representation and modeling of 3D objects.
  • 2D and 3D transformations, projection.
  • Curves and surfaces.
  • 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
Teaching methods
Theoretical lectures covering the fundamentals, methods, and algorithms of computer graphics. Seminar work is focused on the programming of selected algorithms. Students will be provided with a CMake project. Solving a programming task is then about inserting correct C++ implementations to clearly marked places in the project. Students will work on five assignments, introduced and explain 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 given deadlines. The final assessment will be based on the points get from the assignments and the final written exam.
Language of instruction
English
Further comments (probably available only in Czech)
The course is taught annually.
Listed among pre-requisites of other courses
Teacher's information
All materials will be available in the Information system.
The course is also listed under the following terms Spring 2003, Spring 2004, Spring 2005, Spring 2006, Spring 2007, Spring 2008, Spring 2009, Spring 2010, Spring 2011, Spring 2012, Spring 2013, Spring 2014, Spring 2015, Spring 2016, Spring 2017, Spring 2018, Spring 2019, Spring 2020, Spring 2021, Spring 2022, Spring 2024, Spring 2025.
  • Enrolment Statistics (Spring 2023, recent)
  • Permalink: https://is.muni.cz/course/fi/spring2023/PB009