SubjectsSubjects(version: 845)
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 2018
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: http://cgg.mff.cuni.cz/lectures/npgr019.cz.php
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. Jan Kolomazník, Ph.D. (18.02.2019)

Student must have enough lab assignments finished before going to an exam.

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. Jan Kolomazník, Ph.D. (18.02.2019)

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):

https://cgg.mff.cuni.cz/~kolomaznik/index.php#NPGR019

Student should sucessfuly finish at least two lab assignments 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

7. CUDA
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 | http://www.cuni.cz/UKEN-329.html