From the course: Modo 2019 Essential Training

Understanding lighting and rendering - MODO Tutorial

From the course: Modo 2019 Essential Training

Start my 1-month free trial

Understanding lighting and rendering

- In this introduction to lighting and rendering, the first topic I'm going to address is global illumination. Global illumination refers to any kind of scene lighting that is not provided by a direct light. So for example, if you go to add item in the item list and you look under lights category, you can see there's a range of direct lights you can apply in your scene. However, in this scene, there no direct lights at all. So global illumination lighting is lightning that's either provided by the environment, or by any luminous geometry you might have in your scene. Or by the light that is bouncing in between surfaces, such as walls, for example. And global illumination, or GI for short, is absolutely crucial when it comes to creating realistic renders. And that's because it's GI that creates the natural bounce and diffusion that you get with light bouncing between different surfaces. Think of a room, for example, which is illuminated by a single window. While much of the light in the room is actually light that's bouncing between the walls rather than light that is coming directly from the window itself. And in computer graphics, it's global illumination that provides this kind of bounce light. So, I've set up this simple scene with no direct lights, as I mentioned earlier. And in fact all of the lighting is coming from this small opening here in the ceiling. And this a bit of a torture test for global illumination. Because global illumination is calculated by a process called sampling. Which I'm going to quickly explain. With a ray-tracing render engine, such as MODO, what happens is that individual rays are fired out, out of the camera and into the scene. Now when a camera ray encounters a particular surface, the surface is then sampled at that point by means of firing further secondary rays from that pixel out into the scene. So let's just imagine that 1000 secondary rays are being fired from this point randomly out into the scene. While most of the rays are going to hit the black walls, only a very small number of these rays, will find this opening in the ceiling. And this means that the majority of rays are going to sample dark walls and only a very few rays are going to sample the bright environment. So in a high contrast environment, especially one that has a small light source or a small opening, you need to fire a huge amount of these secondary GI rays in order to get accurate sampling. Because if you only fire a small amount of GI rays, on some occasions those rays will never find this opening. And in that case, the pixel will be shaded with a dark color, because the GI rays only found the dark walls. But if on the next pixel to be shaded, the GI rays did find the bright opening, then that pixel will be shaded much brighter. And so the end result would be that on this surface, some pixels will be shaded very dark, and then neighboring pixels will be shaded very bright and the end result would just look very noisy. And the only way to eliminate this noise, would be to fire more GI rays into the scene, so that the sampling returns more consistent and accurate results, and then your surface will be shaded more evenly and consistently. And in MODO there's two separate global illumination algorithms. So, if I select the render item in the shade tree, and go to the global illumination tab, we can see both are there in the settings. The first one in direct illumination, is sometimes called Monte Carlo or brute force, and this simply fires camera rays and then secondary rays out into the scene. And generally, in order to get clean results, you need to fire a large number of rays. And there's irradiance caching, which works a little differently, because rather than sampling at every pixel, it will sample a much larger area on a surface and then blur the results. So instead of getting noise with irradiance caching, you're more likely to get blotchiness. So with this explanation out of the way, let's launch preview so we can see the results of this torture test in our scene. And as you can see, the results aren't very appealing. Because the entire scene is lit by this one small opening, which is very hard for the GI rays to find. We're getting these very blotchy results. Especially on surfaces which aren't directly facing the opening. And another issue is that MODO defaults to one bounce. Which means that the scene looks unnaturally dark, because the GI rays are terminated after only one bounce on the surface. So the first thing I can do to improve this render, is to increase the number of bounces to 16, which is going to give much brighter and more naturalistic results. But although things are looking better, we still have a lot of blotchiness on the back wall, and in the shadow area under the kettle. Now one way I might try and mitigate that, would be to increase the number of irradiant samples. However, it can be extremely hard to get completely blotch-free results when you're using irradiance caching. So the main reason that you would use irradiance caching in the first place, is because it is a lot faster than just Brute Force. However the main drawback, is that it can be extremely hard to get completely blotch-free results. And so the approach that I would actually recommend would be to firstly increase the amount of irradiance samples. So I'm going to increase them to 1000. And then to change the irradiance usage from first and second bounce, to second bounce only. And what happens when you do this, is the first bounce is calculated via Brute Force, and only the second bounce is calculated by irradiance caching. So this combines the two approaches to get the best of both worlds. And the end result is, the blotchiness is completely gone. And it's been replaced by this fine-grain noise, which is a result of Monte Carlo calculations. And because we're using preview to render this, the noise will eventually clear up, because preview will keep firing indirect samples into the scene, until we get clean results. So when you're using global illumination in MODO, it's important to understand that the default settings are geared toward speed rather than quality. And so as a bare minimum when setting up a new scene, there's two things you should do in the global illumination settings. Which is to increase the number of bounces and to change the irradiance usage to second bounce only.

Contents