SubjectsSubjects(version: 837)
Course, academic year 2018/2019
   Login via CAS
Realtime Graphics on GPU - NPGR019
Title in English: Realtime grafika na GPU
Guaranteed by: Department of Software and Computer Science Education (32-KSVI)
Faculty: Faculty of Mathematics and Physics
Actual: from 2018 to 2019
Semester: summer
E-Credits: 5
Hours per week, examination: summer s.:2/1 C+Ex [hours/week]
Capacity: unlimited
Min. number of students: unlimited
State of the course: taught
Language: Czech, English
Teaching methods: full-time
Additional information:
Guarantor: Mgr. Jakub Gemrot, Ph.D.
RNDr. Josef Pelikán
Class: Informatika Bc.
Informatika Mgr. - volitelný
Classification: Informatics > Computer Graphics and Geometry
Annotation -
Last update: T_KSVI (21.05.2004)
Lecture covers basics of hardware accelerated computer graphics on PC. Topics: mathematical foundations for 3D graphics, data structures, computer graphics pipeline, geometric transforms and lighting, visibility, transparency, texturing, stencil buffer, multipass rendering, etc. GPU programming: vertex-shaders and pixel-shaders, API for HW accelerated graphics programming.
Course completion requirements -
Last update: RNDr. Josef Pelikán (22.06.2018)

Student must have enough lab assignments finished (at least handed in)

before going to an exam.

Lab credit requirements are explained in detail on the page:

The same URL explains the grading system of the subject.

Exam can be repeated. Lab credit repetition is irrelevant.

Literature - Czech
Last update: doc. RNDr. Pavel Töpfer, CSc. (31.01.2018)

Tomas Akenine-Möller, Eric Haines: Real-Time Rendering, A K Peters, 2002, ISBN: 1568811829

OpenGL Architecture Review Board: OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 1.4, Fourth Edition, Addison-Wesley, 2003, ISBN: 0321173481

Randi J. Rost: OpenGL(R) Shading Language, Addison-Wesley, 2004, ISBN: 0321197895

Ron Fosner: Real-Time Shader Programming, Morgan Kaufmann, 2002, ISBN: 1558608532

Requirements to the exam -
Last update: RNDr. Josef Pelikán (22.06.2018)

Exam is written and oral (basis is written, there is a possibility to

call a student for short discussion over the answers).

Every topics presented at lectures can be examined (exceptions are mentioned specifically):

Overall grading is based on lab credit (50-80 points) + exam points (0-100 points).

Grading table - together with further details - can be found on

Student should earn enough lab credits before going to an exam.

Syllabus -
Last update: RNDr. Josef Pelikán (17.02.2011)
1. Introduction, history
graphical pipeline: application, geometry, rasterization, history of HW 3D graphics acceleration

2. 3D scene representation
Brep, triangle meshes, index arrays, hierarchical representations, level-of-detail, skinning, billboard techniques, point sprites

3. Basic algorithms
visibility, transparency, clipping, shading, color interpolation, fog, texture mapping, bump mapping, environment mapping

4. Programming graphical accelerator
data passing, data types, textures, index-buffers, strips/fans, double-buffering, accumulation buffer, stencil-buffer, multipass rendering, shaders: architecture, introduction to shader programming

5. Advanced methods, shaders
advanced shaders, vertex and fragment shader cooperation, vertex blending, Phong shading, fog, transparency, accumulation buffers and stencil buffers: motion blur, depth of field, shadow casting, data culling, portal techniques, selected methods from animation, skeletal hierarchy, tesselation and geometry shaders

6. API for 3D accelerated graphics
updates in OpenGL 4, shaders, Cg language, samples, cookbook, brief API reference

basics of programing massive parallel processors using CUDA and OpenCL

8. Realtime raytracing
OptiX - interface for realtime GPU raytracing, its alternatives, current HW for raytracing

Charles University | Information system of Charles University |