All the dates are for the Czech course

Playlist
for the lectures (2021/2022).

Playlist
for the labs (2021/2022).

Course content, additional sources, Ray-tracing principles revisited.

*Video:*
Lecture 1 (2021/22).

Credit system, programming environment (C# environment,
SVN/Git repository grcis, MS Visual Studio),
GrCis repository,
ray-tracing example: `048rtmontecarlo-script`.

Ray-based renderer architecture I
(interfaces and core classes: RayScene, IIntersectable, IImageFunction, IRenderer,
ISolid, ..)

Ray-tracing in GrCis (PDF slides)

*Video:*
Lab 1 (2021/22) – lab credit, GrCis ray-tracer
demo, some extension ideas, Ray-tracer architecture I.

Shading basics, continuous shading. Definition of BRDF,
physics, general BRDF concepts...

*Video:*
Lecture 2 (2021/22).

Shading interpolation demo (Gouraud, Phong).
Architecture of ray-based renderer II
(Intersection, ISolid, IReflectanceModel, IMaterial), ICamera revisited,
CS-script for scene definition (project `048rtmontecarlo-script`)

Lab credit details, term projects. See
lab page for details.

*Video:*
Lab 2 (2021/22) – shading
interpolation demo, Ray-tracer architecture II.

General BRDF concepts revisited, Fresnel functions, microfacet models:
Cook-Torrance, Oren-Nayar, looking for better microfacet distributions
D(h) and geometric factors G, Lafortune's lobe model, Schlick's improvements...

*Video:*
Lecture 3 (2021/22).

Ray-based renderer architecture III
IReflectanceModel, IMaterial, Intersection, ISolid, ICamera [revisited],
CS-script for scene definitions (the `048rtmontecarlo-script` project)

*Video:*
Lab 3 (2021/22) –
Ray-tracer architecture III.

Ray-scene intersection basics: planar shapes, convex polyhedron, implicit and algebraic surfaces,
general and rotational quadrics, sphere (geometric solution), torus, surface of revolution,
CSG representation.
Spline surfaces, Bezier surfaces: subdivision, Newtonian iteration.

*Video:*
Lecture 4 (2021/22).

Intersections, ITimeDependent, 062animation-script application,
video rendering, animators in a RayTracingScene, Glowing objects (RecursionFunction).

*Video:*
Lab 4 (2021/22) –
animation (ITimeDependent), Ray-tracer architecture IV.

Classification of acceleration techniques, bounding solid, bounding efficiency,
bounding-volume-hierarchy (BVH), efficiency and construction,
SAH heuristics.

*Video:*
Lecture 5 (2021/22).

Ray-tracing scene acceleration suggestions, triangle- and box- intersections,
RecursionFunction II, glowing objects revisited.

*Video:*
Lab 5 (2021/22) – acceleration,
RecursionFunction, Ray-tracer architecture V.

space dividing methods: grid, 3DDDA, octree, KD-tree, subdivision
approaches, adaptive tree pass.
[Directional acceleration techniques, cube directory, light buffer,
ray coherency, projection plane directory, generalized rays]

Textures in ray-tracing – 2D and 3D textures, table (bitmap) vs. procedural texture,
table interpolations. "Bump-texture" (normal map), stochastic textures - introduction.

*Video:*
Lecture 6 (2021/22).

Texture filtering examples, textures in GrCis, simple bump-texture example.

*Video:*
Lab 6 (2021/22) – textures,
Ray-tracer architecture VI.

Synthetic noise functions (white noise, interpolation and convolution methods), Perlin noise, Lewis sparse
convolution, turbulence, application of noise functions in texture synthesis: wood, marble.
More applications of noise functions (water surface simulation, flame simulation).

*Video:*
Lecture 7 (2021/22).

More usage of noise functions (water surface simulation, flame simulation),
complex RT-scene with a particle system driven by an Animator object.

*Video:*
Lab 7 (2021/22) –
noise functions, complex animated scene example, Ray-tracer architecture VII.

Basics of sampling theory, anti-aliasing in R-T context, spatial/temporal alias,
Anti-aliasing by numeric quadrature, sampling method survey (regular, random sampling, jittering,
"N-rooks" sampling, Poisson disc sampling, Mitchell's algorithm, deterministic
algorithms).

*Video:*
Lecture 8 (2021/22).

Anti-aliasing and sampling examples.

*Video:*
Lab 8 (2021/22) –
Anti-aliasing and sampling examples,
Ray-tracer architecture VIII.

Adaptive sampling, supersampling criteria, practical examples.

Distributed ray-tracing: glossy reflections and refractions,
soft shadows, depth-of-field simulation, motion blur,
light dispersion. Monte-Carlo quadrature, examples.
Multi-dimensional sampling, hidden sampling.

*Video:*
Lecture 9 (2021/22).

Distributed Ray-tracing examples, hidden sampling, etc.

*Video:*
Lab 9 (2021/22) – adaptive sampling, distributed ray-tracing,
Ray-tracer architecture IX (hidden sampling).

Basic radiometric terms, flux, radiance, irradiance,
solid angles, BRDF, Kajiya's rendering equation.
Problem discretization (FEM), system of linear equations for radiosity.

*Video:*
Lecture 10 (2021/22).

More examples.

*Video:*
Lab 10 (2021/22) –
examples of distributed Ray-tracing, radiosity.

Monte Carlo integration: introduction, primary and secondary estimates,
variance, stratified sampling, importance sampling, combined estimators,
examples

*Video:*
Lecture 11 (2021/22) –
Monte Carlo integration (the simplest task)

Integral equations, random walks, Russian roulette,
next event estimation (NEE)...

Rendering equation revisited (Kajiya), symbolic light transport
description (regular expressions)

*Video:*
Lecture 12 (2021/22) –
Monte Carlo estimation of Fredholm integral equation system

Path-tracing (random paths), bidirectional path tracing, NEE, examples.

*Video:*
Lecture 13 (2021/22) –
Monte-Carlo rendering, Path tracing, Light tracing, Bidirectional path tracing

Photon mapping.

*Video:*
Lecture 14 (2021/22) –
Photon mapping

Copyright (C) 2001-2022 J.Pelikán, last change: 2022-07-20 00:48:00 +0200 (Wed, 20 Jul 2022)