Real-time computer graphics

This lecture ...

  • Will focus on visualization of 3D scenes
  • Will show you what are current topics
  • Will improve your skills in
    • OpenGL
    • Computational geometry
    • Algorithms and data structures


What you Need to Pass


  • Grades
    • A = 92-100
    • B = 84-91
    • C = 76-83
    • D = 68-75
    • E = 60-67
    • Fx = 0-59

LESSONS

Lesson00 "Introduction to Computer Graphics"

  • Introduction to Computer Graphics
  • Common techniques
  • Cutting edge tools and packages
  • State of the Art
    • Volumetric particle shadows [1]
    • Evolution of graphics from NVIDIA [2]
    • PhysX [3]
  • Lecture schedule
  • "Terms and conditions" of this lecture
  • Lecture notes: Lecture0.pdf

Lesson01 "Graphics Pipeline, Shaders"

  • OpenGL Graphics Pipeline [4]
  • Shader languages
  • GLSL – vertex, fragment
  • Passing variables
  • Lecture notes: Lecture1.pdf

Lesson02 "Buffer Objects, FBO"

  • Vertex arrays [5]
  • Buffer object data
  • Vertex Buffer Objects [6]
  • Pixel Buffer Objects [7]
  • Rendering to texture
  • Deferred lighting [8]
  • Lecture notes: Lecture2.pdf

Lesson03 "Lighting, Texturing"

  • Rendering equation
  • Phong local illumination
  • Oren-Nayar model
  • Cook-Torrance model
  • Texture filtering
  • Bump mapping
  • Lecture notes: Lecture3.pdf

Lesson04 "Global Illumination"

  • Ambient occlusion
  • Distance attenuation
  • Ray tracing
  • Depth buffer masking
  • Lecture notes: Lecture4.pdf

Lesson05 "Shadows"

  • Shadows generation
  • Light maps
  • Planar shadows
  • Projective shadows
  • Shadow mapping
  • Shadow volumes
  • Lecture notes: Lecture5.pdf

Lesson06 "Reflections, Refractions"

  • Blending
  • Fresnel reflectance
  • Environment mapping
  • Water rendering
  • Caustics
  • 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"

Lesson10 "GPU Volume Graphics"

  • Volume Data
  • Transfer Function
  • Marching Cubes
  • 3D Textures
  • Multi-textures
  • Ray-casting
  • Lecture notes: Lecture10.pdf


EXCERCISES

Excercise00 "Základný projekt”

  • Základný projekt: cv0.rar
  • Práca s knižnicami GLUT a GLEW

Témy: spustenie projektu, cvičenie s pridávaním svetla do scény a shaderov

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

Témy: prepíšte predchádzajúce cvičenie do GLSL 4.00.9: cv2.zip

Excercise03 "Geometry Shader”

  • Z buffer
  • Geometry Shader [11]

Témy: napíšte geometry shader ktorý vytvorí z trojuholníka štvorsten: cv3.zip

Excercise04 "Tessellation”

  • Tessellation control shader [12]
  • Tessellation evaluation shader

Témy: napíšte control a evaluation shader ktorý prerozdelí trojuholník: cv4.zip

Excercise05 "Motion Blur”

  • Screen space motion blur
  • Framebuffer Object

Témy: napíšte shader ktorý vytvorí efekt "motion blur": cv5.zip

Excercise06 "Projekcia”

  • Projekčná matica
  • Zobrazenie modelu

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