(→Lesson06 "Reflections, Refractions") |
(→Lesson06 "Reflections, Refractions") |
||
Line 87: | Line 87: | ||
* Fresnel reflectance | * Fresnel reflectance | ||
* Environment mapping | * Environment mapping | ||
− | * Water rendering [https://www.gamasutra.com/blogs/FrankKane/20140122/209052/3D_Water_Effects_Heres_Whats_Involved.php?print=1] [https://www.keithlantz.net/2011/10/ocean-simulation-part-one-using-the-discrete-fourier-transform/] [https://developer.nvidia.com/gpugems/GPUGems/gpugems_ch01.html] | + | * Water rendering [https://www.gamasutra.com/blogs/FrankKane/20140122/209052/3D_Water_Effects_Heres_Whats_Involved.php?print=1] [https://www.keithlantz.net/2011/10/ocean-simulation-part-one-using-the-discrete-fourier-transform/] [view-source:http://david.li/waves/][https://developer.nvidia.com/gpugems/GPUGems/gpugems_ch01.html] |
* Caustics [https://medium.com/@evanwallace/rendering-realtime-caustics-in-webgl-2a99a29a0b2c] | * Caustics [https://medium.com/@evanwallace/rendering-realtime-caustics-in-webgl-2a99a29a0b2c] | ||
* Subsurface scattering | * Subsurface scattering |
Revision as of 19:02, 8 April 2018
Real-time computer graphics
Contents
- 1 Real-time computer graphics
- 2 What you Need to Pass
- 3 LESSONS
- 3.1 Lesson00 "Introduction to Computer Graphics"
- 3.2 Lesson01 "Graphics Pipeline, Shaders"
- 3.3 Lesson02 "Buffer Objects, FBO"
- 3.4 Lesson03 "Lighting, Texturing"
- 3.5 Lesson04 "Global Illumination"
- 3.6 Lesson05 "Shadows"
- 3.7 Lesson06 "Reflections, Refractions"
- 3.8 Lesson07 "Post-Processing"
- 3.9 Lesson08 "Geometry Optimalization"
- 3.10 Lesson09 "GPGPU"
- 3.11 Lesson10 "GPU Volume Graphics"
- 4 EXCERCISES
- 4.1 Excercise00 "Základný projekt”
- 4.2 Excercise01 "Texturing and Lighting”
- 4.3 Excercise02 "GLSL 4.00.9”
- 4.4 Excercise03 "OBJECT LOADING”
- 4.5 Excercise04 "Geometry Shader”
- 4.6 Excercise05 "Tessellation”
- 4.7 Excercise06 "Shadow Mapping”
- 4.8 Excercise01 "Animácia”
- 4.9 Excercise02 "GLSL 4.00.9”
- 4.10 Excercise03 "Geometry Shader”
- 4.11 Excercise04 "Tessellation”
- 4.12 Excercise05 "Motion Blur”
- 4.13 Excercise06 "Projekcia”
- 4.14 Excercise07 "Shadow Mapping”
- 4.15 Excercise08 "Ambient Occlusion”
- 4.16 Excercise09 "Post-processing”
This course ...
- Will focus on visualization of 3D scenes [1] [2]
- Will show you what are the current topics
- Will improve your skills in
- OpenGL
- Computational geometry
- Algorithms and data structures
What you Need to Pass
- Show your project (50% min. 25%).
- Project specification template: RTGProjektSpecifikacia.doc
- For video recording you can use: https://obsproject.com/
- Pass oral exam: (50%, min. 25%).
- Grades
- A = 91-100
- B = 81-90
- C = 71-80
- D = 61-70
- E = 51-60
- Fx = 0-50
LESSONS
Lesson00 "Introduction to Computer Graphics"
- Introduction to Computer Graphics
- Common techniques
- Cutting edge tools and packages
- State of the Art
- Course schedule
- "Terms and conditions" of this course
- Lecture notes: Lecture0.pdf
Lesson01 "Graphics Pipeline, Shaders"
- OpenGL Graphics Pipeline [9]
- Shader languages
- GLSL – vertex, fragment
- Passing variables
- Lecture notes: Lecture1.pdf
Lesson02 "Buffer Objects, FBO"
- Vertex arrays [10]
- Buffer object data
- Vertex Buffer Objects [11]
- Pixel Buffer Objects [12]
- Rendering to texture
- Deferred lighting [13]
- Lecture notes: Lecture2.pdf
Lesson03 "Lighting, Texturing"
- Rendering equation
- Phong local illumination
- Oren-Nayar model
- Cook-Torrance model
- Texture filtering [14] [15]
- Bump mapping
- Lecture notes: Lecture3.pdf
Lesson04 "Global Illumination"
- Ambient occlusion [16]
- Distance attenuation
- Ray tracing [17]
- Depth buffer masking
- Lecture notes: Lecture4.pdf
Lesson05 "Shadows"
- Shadows generation
- Light maps
- Planar shadows
- Projective shadows
- Shadow mapping [18]
- Shadow volumes
- Lecture notes: Lecture5.pdf
Lesson06 "Reflections, Refractions"
- Blending
- Fresnel reflectance
- Environment mapping
- Water rendering [19] [20] [view-source:http://david.li/waves/][21]
- Caustics [22]
- Subsurface scattering
- Lecture notes: Lecture6.pdf
Lesson07 "Post-Processing"
- Depth of Field
- Gaussian blur
- Motion blur
- Glow
- High Dynamic Range
- Tone mapping
- Lecture notes: Lecture7.pdf
Lesson08 "Geometry Optimalization"
- Reducing geometry
- Back-face culling
- Occlusion culling
- Levels of Detail
- Texture atlas
- Lecture notes: Lecture8.pdf
Lesson09 "GPGPU"
- SIMD
- CUDA [23] [24]
- Shared memory
- OpenCL
- Compute shaders
- Lecture notes: Lecture9.pdf
Lesson10 "GPU Volume Graphics"
- Volume Data
- Transfer Function
- Marching Cubes
- 3D Textures
- Multi-textures
- Ray-casting
- Lecture notes: Lecture10.pdf
EXCERCISES
- On every seminar we will focus on the selected problems from lessons. We will use programming tools to perform real-time computer graphics algorithms.
- Tutorials:
- Libraries:
Excercise00 "Základný projekt”
- Základný projekt: cv0.rar
- Práca s knižnicami GLUT a GLEW
Témy: pridajte svetlo do scény a shader programu
Excercise01 "Texturing and Lighting”
Assignment: create a textured cube and implement the diffuse lighting in the shader program: cv01.zip
Excercise02 "GLSL 4.00.9”
- Transformation matrices
- Animation
- VBO [27]
Assignment: Create VBO and implement shader programs using GLSL 4.00.9: cv2.zip
Excercise03 "OBJECT LOADING”
- Projection and Model-view Matrices
- Assimp Library
- Specular Lighting
Assignment: Load object and textue. Create VBO and implement specular light shader programs using GLSL: cv03.zip
HOMEWORK (28.3.):
- load 3 objects
- create point light source
- add a texture
Excercise04 "Geometry Shader”
Assignment : Implement shader program that creates a tetrahedron: cv04.zip
Excercise05 "Tessellation”
- Tessellation control shader [30]
- Tessellation evaluation shader
Témy: napíšte control a evaluation shader ktorý prerozdelí trojuholník: cv05.zip
Excercise06 "Shadow Mapping”
Témy: nastavte kameru z pohľadu svetla a zobrazte tieň: cv7.zip
OUTDATED:
Excercise01 "Animácia”
- Transformácia objektov
- Animácia, matice
Témy: cvičenie transformácie v shader programe: cv1.rar
Excercise02 "GLSL 4.00.9”
- Transformácia objektov
- Animácia, matice
- VBO [33]
Témy: prepíšte predchádzajúce cvičenie do GLSL 4.00.9: cv2.zip
Excercise03 "Geometry Shader”
Témy: napíšte geometry shader ktorý vytvorí z trojuholníka štvorsten: cv3.zip
Excercise04 "Tessellation”
- Tessellation control shader [36]
- Tessellation evaluation shader
Témy: napíšte control a evaluation shader ktorý prerozdelí trojuholník: cv4.zip
Excercise05 "Motion Blur”
Témy: napíšte shader ktorý vytvorí efekt "motion blur": cv5.zip
Excercise06 "Projekcia”
Témy: nastavte kameru a zobrazte scénu: cv6.zip
Excercise07 "Shadow Mapping”
- Hĺbková textúra
- Tieň
Témy: nastavte kameru z pohľadu svetla a zobrazte tieň: cv7.zip
Excercise08 "Ambient Occlusion”
- Hĺbková textúra
- Ambient Occlusion
Témy: nastavte shader program na zobrazenie efektu ambient occlusion: cv8.zip
Excercise09 "Post-processing”
- Post-processing
- Glow
Témy: nastavte shader program na zobrazenie glow efektu: cv9.zip