# TU Wien Rendering #18 - Coming Up Next: BVH, Tone Mapping, SSS

## Метаданные

- **Канал:** Two Minute Papers
- **YouTube:** https://www.youtube.com/watch?v=Oo9oOuC2zOo
- **Дата:** 29.04.2015
- **Длительность:** 11:33
- **Просмотры:** 5,393

## Описание

We now know a lot, but there is still lots of exciting things coming up next! If we implement subsurface scattering in our renderer, we can render translucent objects - these objects are not treated as surfaces, but volumes, in which photons can scatter or get absorbed. Many of these materials look absolutely mesmerizing so we should definitely learn how to do this.

Space partitioning techniques help us to alleviate the problem of intersecting against every object in the scene and tone mapping will help us in translating the simulated radiance to RGB values that we can display on our monitors.

About the course:
This course aims to give an overview of basic and state-of-the-art methods of rendering. Offline methods such as ray and path tracing, photon mapping and many other algorithms are introduced and various refinement are explained. 

The basics of the involved physics, such as geometric optics, surface and media interaction with light and camera models are outlined. 

The apparatus of Monte Carlo methods is introduced which is heavily used in several algorithms and its refinement in the form of stratified sampling and the Metropolis-Hastings method is explained. 

At the end of the course students should be familiar with common techniques in rendering and find their way around the current state-of-the-art of the field. Furthermore the exercises should deepen the attendees' understanding of the basic principles of light transport and enable them to write a simple rendering program themselves.

These videos are the recordings of the lectures of 2015 at the Teschnische Universität Wien by Károly Zsolnai and Thomas Auzinger

Course website and slides → http://www.cg.tuwien.ac.at/courses/Rendering/
Subscribe → http://www.youtube.com/subscription_center?add_user=keeroyz
Web → https://cg.tuwien.ac.at/~zsolnai/
Twitter → https://twitter.com/karoly_zsolnai

## Содержание

### [0:00](https://www.youtube.com/watch?v=Oo9oOuC2zOo) <Untitled Chapter 1>

next time what you will see is something that was missing from many of the bigger mutations of many assignments what is it what is the complexity of the ray tracing algorithm depend on well it depends on the resolution the bigger the image the longer it takes got it is exponential with respect to the depth at least this implementation is if you shoot out two rays there is always a branching then this is going to be exponential so we have taken into consideration resolution depth but we haven't taken into consideration how many objects there are in the scene and if you start running the same ray tracer on a huge scene because you don't want to see spheres you want to do ray tracing like real men do then what you do is you implement a function that can load your triangle meshes and then you just grab a nice triangle mesh a nice seam from somewhere load it to your ray tracer and you very excitedly run the don't get anything in your whole lifetime if you lose something with millions of polygons which is not much nowadays why someone help me out it just takes too long that's true but why does it take too long because you have to do a lot of intersection tests exactly so i have if i have one million objects i have to do one million intersections every single time that's too much it's just way too much so what we can do is that we can do some

### [1:38](https://www.youtube.com/watch?v=Oo9oOuC2zOo&t=98s) Space Partitioning

kind of space partitioning which means that simple optimizations i can do for instance i really don't care what is behind me because i'm going to intersect something that's in front of me so whatever is behind me i can immediately throw this all of those polygons out that's immediately half of it and if you use smart tricks and kd trees smart tricks smart data structures you can go from linear while in here one million objects one million intersections so that's linear complexity you can go to logarithmic complexity which is amazing because the logarithm after a point doesn't really increase too much and you will learn about techniques that will make you able to compute this intersection with like one million objects with about four or five intersections on average obviously it depends on the distribution of the triangles and all of that but on average you can do it in four or five intersections instead of one million so it's a huge speed up this is going to be on the next lecture and again it seems that i have been lying to you all along regarding this as well because i told you that we are measuring radians for the rendering equation now radians i cannot really display on my monitor what can i display in my monitor rgb values so there has to be some transformation that comes from radians and converts it to rgb in a meaningful way this process

### [3:18](https://www.youtube.com/watch?v=Oo9oOuC2zOo&t=198s) Tone Mapping

is called tone mapping and thomas is going to tell you all about tone mapping as well you can do it in a number of different ways it's heavily non-trivial and a good tone mapping method really breathes life into your rendered images now we haven't talked about filtering this is a bit more sophisticated recursive ray tracing you show you shoot one sample through the midpoint of the pixels to the scene you computed this you're done with monte carlo integration we are going to have many samples so a metric that's called samples for pixel and these samples will not go through the midpoint of the pixel these are going to go through the surface of the pixel like random samples over and we're going to integrate the radians over the whole surface now you can do this differently because you have many samples over the pixel surface and you can take into consideration them into consideration in different ways and you can see that different filtering method this is what we call filtering and different filtering methods will give you different results and the interesting part is that you will get anti-aliasing for free if you do filtering well because in a ray tracer you will shoot one array through the midpoint of the pixel your images unless they are super high resolution they are going to be aliased a completely straight line is going to be pixelated the edges are what can you do trivial things like super sampling let's split one pixel into four other pixels for smaller pixels and compute the rays through all of them and average that's the trivial method that gives you anti-aliasing by super sampling but this is super expensive i mean you have hd resolutions and you have to bump this up by even four times it's too much there's better solutions you can get this for free in global illumination if you do filtering right so this is what filtering is about thomas is also going to talk this is not one lecture this is the next three lectures it's going to talk about

### [5:33](https://www.youtube.com/watch?v=Oo9oOuC2zOo&t=333s) Participating Media

participating media what is this about well in our simulation so far we have taken into consideration that rays of light only bounce off of surfaces but in real life there's not only surfaces there's volumes there's smoke haze many of these effects where a ray of light can not really hit an object but just to smoke and get scattered and if you do your simulation in a way that it supports such a participating medium then you can get volume caustics and that's amazing because i just have shown you the ring and whatever else kind of caustics you will look at you will think of those as some 2d things that i see it on the table this diffuse material that diffuses this radiance back to me so you would think that caustics and shadows are planar they are 2d things but they are in fact volumes so the shadows exist not only the plane but they have the volume because the set of points that are obstructed from the light source are not on the plane they are in 3d and you can get volumetric caustics and volume shadows with participating media because there will be a media a medium in there of which light can scatter so therefore you will see these boundaries you can also get god rays beautiful phenomenal in quickly in nature if you compute you can also get something like this is an actual photograph just to make sure that you see the difference that the first ray is traversing air or vacuum and the next ones have a participating video which can give you this effect the scattering effect and another example of card race well apparently we have this do not disturb piece of paper so there is some lux render rendering going on in this room you better not enter who knows what you will see and you can get not necessarily such pronounced effects but the more subtle effect you can feel that there is some haze in this image but it's not super nice now we don't stop there because don't just think of smoke and atmosphere you can just look at your own skin if you would like to see some participating media now this is a phenomenon we call subsurface

### [8:36](https://www.youtube.com/watch?v=Oo9oOuC2zOo&t=516s) Subsurface Scattering

scattering and this means that some of the things that you would think our objects are surfaces are in fact volumes this is your skin for instance light goes through your skin the portion of light and we don't simulate that because when we hit the surface of the object we bounce directly back and if we write a simulation that makes us able to go inside these objects then

### [9:03](https://www.youtube.com/watch?v=Oo9oOuC2zOo&t=543s) Simulation with Subsurface Scattering

we have a simulation with subsurface scattering and we can account for beautiful effects like this these are some simulations so for instance on the left side you can see probably marble there is subsurface scattering in marble it seems heavily exaggerated to me or either there is a really strong backlighting but this is not a surface anymore you can see the nose of the lady light lots of the radiance actually gets through the nose this is one more example this is not so pronounced i mean exaggerated but you can see this j dragon clearly has some subsurface scattering look at the optically thin parts like the end of the tail you can see that it's much lighter and this is because some of the light is going through it and the optically thick parts like the body of the dragon have less subsurface scattering so you can see that this is a bit darker it's a beautiful phenomenon and we can also simulate this and look at this one absolutely amazing doesn't this look amazing this is incredibly awesome we can write computer programs that can compute this in a reasonable amount of time so absolutely beautiful phenomenon let's look at this as well this is a fractal with subsurface scattering i mean how cool can someone get its fractals and subsurface galaxies it's like two of the best foods mixed together it's it has to be something awesome and another example of a beautiful j dragon with just a bit of subsurface camera so that's going to be it for today and there's going to be the next three lectures with us these are all the exciting things that are going to be discussed and then we will complete the monte carlo integration i will tell you how i lied to you exactly and how to use mathematics to see through these lies and then we will write our global illumination program thank you

---
*Источник: https://ekstraktznaniy.ru/video/14994*