Course detail
Computer Graphics Principles
FIT-IZGAcad. year: 2017/2018
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, B-spline, NURBS) in 2D. Principles of closed areas clipping and filling. Methods and solutions for: 2D/3D object transformations, visibility problem, lighting, shading and texturing. Photorealistic rendering of 3D scenes. Different methods of 3D geometry representation. Image processing and antialiasing methods.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Learning outcomes of the course unit
- Student will get acquaint with the basic principles of 2D and 3D computer graphics.
- Student will learn the fundamentals of using main graphical programming interfaces.
- He/she will get acquaint with algorithms for rasterisation and clipping of 2D graphic primitives and filling of closed regions.
- He/she will learn algorithms for 2D and 3D transformations, visibility solution, lighting, shading and texturing.
- Student will learn the fundamentals of photorealistic rendering of 3D scenes.
- He/she will get acquaint with different techniques of 3D objects geometry representation.
- He/she will get acquaint with basic signal processing and antialiasing.
- He/she will practice implementation of vector and raster based graphic algorithms.
- The students will learn how to solve simple problems, individually or in small teams.
- They will also improve their practical programming skills and knowledge of development tools.
Prerequisites
Co-requisites
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
Course curriculum
- Syllabus of lectures:
- Introduction to computer graphics, basic principles, raster vs. vector graphics.
- Colors and different color models, color space reduction, black&white images.
- Rasterisation of basic vector primitives, antialiasing.
- Closed area filling.
- 2D clipping.
- 2D transformations.
- Curves in computer graphics.
- Introduction to 2D graphics API and minimalistic 2D graphic editor.
- 3D objects representation.
- Basics of 3D scene visualization, 3D transformations and projections, visibility problem.
- Lighting models and smooth sufrace shading. Textures and texturing.
- Basics of photorealistic rendering, raytracing and radiosity.
- Modern computer graphics, principles of 3D graphics API, rendering pipeline, etc. Introduction to OpenGL library.
- Laboratories overview (SDL library, tools, compilation).
- Graphical image formats, color space reduction.
- Basic object rasterisation.
- Visualization of 2D spline curves.
- Filling of 2D closed regions.
- 3D transformations.
- Basics of OpenGL.
Syllabus of numerical exercises:
Syllabus - others, projects and individual work of students:
Thematically oriented individual project.
Work placements
Aims
Specification of controlled education, way of implementation and compensation for absences
- Project - 18 points.
- Evaluated laboratory tasks, 6 x 3 bodů - 18 points.
- Midterm written exam - 12 point.
- Final written examination - 52 points.
- Minimum for final written exemination is 20 points.
- Minimum to pass the course according to the ECTS assessment - 50 points.
Recommended optional programme components
Prerequisites and corequisites
Basic literature
Recommended reading
Lengyel, E.: Mathematics for 3D Game Programming and Computer Graphics, Third Edition, 3rd Edition, 2012
Classification of course in study plans
Type of course unit
Lecture
Teacher / Lecturer
Syllabus
- Introduction to computer graphics, basic principles, raster vs. vector graphics.
- Colors and different color models, color space reduction, black&white images.
- Rasterisation of basic vector primitives, antialiasing.
- Closed area filling.
- 2D clipping.
- 2D transformations.
- Curves in computer graphics.
- Introduction to 2D graphics API and minimalistic 2D graphic editor.
- 3D objects representation.
- Basics of 3D scene visualization, 3D transformations and projections, visibility problem.
- Lighting models and smooth sufrace shading. Textures and texturing.
- Basics of photorealistic rendering, raytracing and radiosity.
- Modern computer graphics, principles of 3D graphics API, rendering pipeline, etc. Introduction to OpenGL library.