Course detail

Computer Graphics Principles

FIT-IZGAcad. year: 2018/2019

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 photorealistic rendering of 3D scenes. Different methods of 3D geometry representation. Alias in computer graphics and antialiasing methods.

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 sources of alias and basics of antialiasing methods.
  • 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

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

Co-requisites

Not applicable.

Recommended optional programme components

Not applicable.

Recommended or required reading

  • Žára, J., Beneš, B., Felkel, P., Moderní počítačová grafika, ComputerPress, 1999
  • Žára, J., Počítačová grafika - principy a algoritmy, GRADA, 1992
  • Materiály k přednáškám "Základy počítačové grafiky", http://www.fit.vutbr.cz/study/course-l.php?id=92

  • Foley, J., D., et al., Computer Graphics: Principles and Practise, Addison-Wesley, 1992
  • Watt, A., 3D Computer Graphics, Addison-Wesley, 1993
  • Watt, A., Watt, M., Advanced Animation and Rendering Techniques: Theory and Practise, Addison-Wesley, 1992
  • Watt, A., Policarpo, F., The Computer Image, Addison-Wesley, 1998
  • Thalmann, N., M., Thalmann, D., Computer Animation: Theory and Practise (Second Revised Edition), Springer-Verlag, 1990

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

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

Exam prerequisites:
Student has to get at least 20 points from the project, laboratories and the midterm exam for receiving the credit and then for entering the exam. Plagiarism will cause that involved students are not classified and disciplinary action can be initiated.

Language of instruction

Czech, English

Work placements

Not applicable.

Course curriculum

    Syllabus of lectures:
    1. Introduction to computer graphics, basic principles, raster vs. vector graphics.
    2. Colors and different color models, color space reduction, black&white images.
    3. Rasterisation of basic vector primitives, antialiasing.
    4. Closed area filling.
    5. 2D clipping.
    6. 2D transformations.
    7. Curves in computer graphics.
    8. Introduction to 2D graphics API and minimalistic 2D graphic editor.
    9. 3D objects representation.
    10. Basics of 3D scene visualization, 3D transformations and projections, visibility problem.
    11. Lighting models and smooth sufrace shading. Textures and texturing.
    12. Basics of photorealistic rendering, raytracing and radiosity.
    13. Modern computer graphics, principles of 3D graphics API, rendering pipeline, etc. Introduction to OpenGL library.

    Syllabus of numerical exercises:
    • 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 - others, projects and individual work of students:
    Thematically oriented individual project.

Aims

To provide overview of basics principles of 2D and 3D computer graphics. To get acquaint 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 acquaint 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

  • 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 in other date, and the mid-term exam by extending the final exam.

Classification of course in study plans

  • Programme IT-BC-3 Bachelor's

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

Type of course unit

 

Lecture

39 hours, optionally

Teacher / Lecturer

Syllabus


  1. Introduction to computer graphics - raster vs. vector graphics. Colors and color models, color space reduction, black&white images.
  2. Rasterisation of basic vector primitives
  3. Antialiasing. 2D clipping.
  4. Closed area filling.
  5. 2D and 3D transformations.
  6. Introduction to 2D graphics API and minimalistic 2D graphic application.
  7. Curves in computer graphics.
  8. Basics of 3D scene visualization, 3D transformations and projections.
  9. 3D object representations.
  10. Lighting models and smooth surface shading. Introduction to the OpenGL library.
  11. Visibility problem.
  12. Textures and texturing. Modern computer graphics, principles of 3D graphics API, rendering pipeline, etc.
  13. Basics of photorealistic rendering, raytracing and radiosity.

Computer exercise

12 hours, compulsory

Teacher / Lecturer

Syllabus

  1. Graphical image formats and color space reduction.
  2. Basic object rasterisation.
  3. Visualization of 2D spline curves.
  4. Filling of 2D closed regions.
  5. 3D transformations.
  6. Basics of OpenGL.

Projects

14 hours, compulsory

Teacher / Lecturer

Syllabus

Thematically oriented individual project.

eLearning