 It's a pleasure to be here. It's an honor to be here. This is my first time at Blender Conference, so I'm lucky to also be up here. We just turned my phone down as Slack keeps going crazy. So just a thank you to Tom Francesco and everybody at the Blender team for helping make this possible and helping me with some of the technical issues here. We're gonna try and give a bit of a practical demonstration here rather than slides, which I'm already starting to regret. My name's Paul Chambers. I came in from New York City overnight, so my talk's gonna be sort of driven by anxiety, caffeine, adrenaline, and somewhere in the middle. And apparently I need to beatbox at some point because that seems to be the thing to do here, the Blender Conference. I also wanna quickly thank Troy Sabocca, who some of you may know is the guy behind Filmic Blender. He is a guy that I had a pleasure of working with recently who introduced me to some of the concepts I'm gonna talk about today, which are kind of painfully obvious once you understand them. And my biggest sort of fever dream coming into this is that perhaps I'm gonna talk about something that's so obvious, maybe, you know, think what the hell did that guy get up and talk about 30 minutes about that for? But I really, it was really something that kind of clicked for me. So I have to thank Troy, but in the spirit of Blender, this is what he's sort of downloaded onto me. I wanna share to you guys. So there are lots of great tutorials about HDRI lighting and many of you guys in the room and here at the festival are a part of helping make those responsible for those. But that's great when you're putting together a single kind of image or a single scene. But what happens when you need things to start moving in that scene? So what I have up here on screen is two what seemingly look similar setups here. I should point out just before I run this that while this appears to be Suzanne in a box with three lights, it's actually just a background plate. So Suzanne is composited on top of a background plate with the appearance of the three emissive lights in the background. The difference is gonna become apparent when this thing starts to move. But even here, depending on, I can't quite tell how well you can see on the screen up here. But certainly on my laptop, the green lighting on the right is slightly different. So what's the difference? Okay, well, let's go ahead and play this. So here's our image on the left. And here's Suzanne bouncing back and forth and really it's just a single render camera and rendered her or him, well her, I guess, Suzanne with a single HDRI. Which is great, except we're implying that she's in a scene with some lighting that's in the scene, in this case, the background. If I play the one on the right here, you should hopefully start to see what we would expect to see which is her being impacted by the light that's happening here. And the difference between these two setups is the one on the left is set up and lit with a single HDRI. So as she moves back and forth in space, she's continually lit by one HDRI. The second one is the essence of what I wanna chat about today which is about using textures to also help light our scene. So on the one on the right, she's not just by a single HDRI, but proximity lighting, lighting that's coming from 32-bit textures. So let me break that down a little bit for you, see what we're looking at here. So here's our simple scene here and yes, I am a left clicker for a left selector. And you can see in the world background here as we look around, this is the HDRI. And I made the HDRI in Blender. It was just a simple kind of rectangle with three emissive lights. And in fact, if I go over here, you can see, let's have a look here, cube to create the render. Sorry, that's camera render, cube, cube to create HDRI. So I've made myself a cube or rectangle. And in that, I placed three emissive lights, blue, green, and red. And I went ahead and rendered that out with a panoramic camera and it gave me what you see here on the left hand side. So that's the HDRI. So that was what was set up and you can see that's the world that's lighting this scene here. So if we take those away again here for a second. So that gives us what's happening here on the left. And you can see here just the simple composite that there's our background. And the background was done somewhat similarly. I set up a render camera here and I set up a cube to make my background, which is basically just an open phase cube. And I made another image, I rendered out another image here. So a combination of these two images, an HDRI and a background image composited in with an alpha over gives me this scene. But as we've seen here, the challenge is then that while we have the background giving the appearance of a red, blue, and green light, because it's a single HDRI, the lighting doesn't appear to change. So we need to get into more of this kind of situation here on the right. Now, this is obviously a very sort of painfully obvious and simple example and it's probably something if you were gonna do it in reality, you just go ahead and probably wouldn't even use HDRI. You'd probably just use the three emissive lights and set it up rather like I have here, you know, our box and I might have a red light, a blue light and a green light and I would animate from this camera and I would animate Suzanne moving back and forth. But again, it painfully obvious example just to show, you know, the principle. So what's the difference with this one here on the right? Okay, well the one on the right, what's happening is in addition to her being lit by an HDRI, she's actually lit by a cube that I bake from the environment. Here is that cube and if we go and put it on to textured mode, there's the cube. So in essence, as Suzanne moves left and right back and forth through this space, she's doing so in this cube. Now, you see there's two layers here. There's a reason for that because when it comes to the final render, I just wanna see her. I don't wanna see that cube but because I've got the two renders affecting the scene, this is impacting lighting on her. Again, let's just go to this here and you can see that's the texture that we're looking at there. Now the key thing is this is a 32 bit texture and so what happened is I built this cube in the scene and I basically did bake environment to take the HDRI light back into the cube. So this is sort of a zany setup because we have a cube, I build it and I put three lights in it and I use that cube to make an HDRI setup and then essentially I reverse the process. I took it all the way back into bake this cube. So when Suzanne moves back and forth left to right here, she's being lit by that cube. She's surrounded by a cube covered in a texture, 32 bit that is imparting lighting information on her as well. So ordinarily I would say it's the cube in combination with the HDRI but because it's a closed cube for argument's sake, she's just being lit that way. So again, a painfully simple example. So I wanted to kind of give you a real world example of how this might come together. So this is just a quick 20 second shot that I worked on recently. That's CG integration with all blender and cycles rendering into a film scene. You might recognize this guy at the back and it might tell you something about how I feel about him. And here is the end of the scene. So it's just a sort of simple 20 second shot but particularly important, I want to draw your attention to is around here somewhere. Let's have a look, where are we? This guy comes in, okay. To all intents and purposes, this is a more detailed Suzanne. Suzanne's probably in there piloting this thing as it comes down. Obviously people have been putting CG integration into scenes for years but as time has progressed, in a way it's become easier and easier to do so because this was pretty done with a pretty much a simple lighting setup of just an HDRI and a textured environment much like I just showed in the past example. So I didn't have to do a bunch of kind of fake things like fake bounce lights or get into the compositor and tweak the lighting. I didn't have to do a whole bunch of stuff to get this drone to match the lighting of the environment because it was lit by the environment and that's the key difference. So again, let's just have a quick look at what's happening here. So let me pull out here. So this is shot on the mean streets of New York City and this is the same location at a slightly different time of day when there was no cars there but I'm basically shooting into this alleyway. And what I did is I, if you look down at the bottom of this HDRI, you can actually see that where the pano head on the tripod was, this was the location of the camera. So this is essentially our 00 point in our scene and this is the environment around it. And I built a set here that was baked from this environment. So again, if I go to texture here, you can see now that that is baked from this environment. And what it does is, Suzanne here in this case is essentially a proxy for the drone in the example I showed which is the drone dropping down from the top of the camera into the alleyway. But because I actually shot it from a camera here and actually you can see the camera basically, the digital camera mimicking where the real life camera was by placing Suzanne in here, she's lit differently because she's in the alleyway as opposed to a Suzanne that's out here on the street. Now, just to show this a little bit more clearly, if I go into view cameras, well, view camera and look around, if you look carefully here, you can actually see the edge of the set. So see that line there? That's where the sidewalk, so to speak, is from the HDRI, meets the HDRI of the set. Again, up here, if we look up here, you can see the baked texture of the set meets the environment. So it's this combination of the HDRI providing some of the ambient light and the light up in the sky above the alleyway and this texture providing proximity because remember light is a physical law and so it's the inverse square law. It doesn't just have energy, but it has energy that dissipates over distance. So an HDRI, I'm oversimplifying it and I'm not the right guy who's qualified to talk about this degree of about light and that's where someone like Troy would come in. But from an HDRI essentially, it's almost like having a big sphere around our scene. So all of the light is kind of coming from an equal distance. By introducing proximity or distance, we're now introducing lighting coming in closer to the object and this is what I talk about being kind of painfully simple, but hopefully valuable. So if we go ahead now and just turn this onto a rendered view, you'll go ahead and see, okay, so here's Suzanne in this environment and let's get in a little closer and you can see that the light is coming down in from above and she's slightly darker on the left and on the right and there's a little bit of this bounce light coming off the ground, the orange here. Now if I take the set out of the scene, I mean maybe it's subtle, but there's a difference there. That's Suzanne lit just with the HDRI and not with the set again. So that's the HDRI location, which remember was out on the sidewalk, slightly out from the alleyway and now if I bring the set back in, again obviously it takes a couple of seconds to resolve, but you can see now how those lighting conditions change, the edges of Suzanne and so while that's potentially a subtle difference, it's important when you're looking for some kind of CGI integration into that space. If we look at Suzanne out here on the street, she more accurately reflects what the lighting conditions are there. So in real world space we're only talking about a couple of meters or a few feet between these two Suzanne's, but one is lit slightly differently. So I wanted to just briefly touch on how this came about. You can see the baked texture down in here. So just very briefly an attempt to kind of a practical demonstration of how this was done. Again, hopefully painfully straightforward, but let's have a look. And this is when it crashes. So you try and go all open source people. And this is what happens to you. Okay, let me restart that because I really do wanna show you this practical example. Please, good question. So the stage mesh, I mean it's important that it mimics the placement of the environment because it's going to affect the lighting, but as you may have observed from that example, there were things like the grid of the wire mesh in the scene that wasn't entirely accurate. And so maybe it doesn't have to be exact. And there have even been cases where I've gone in and sort of hand-painted some things. So at one point I wanted to change some of the colors of the cars and I went in and changed the texture. But one thing I would say is that there's value in it being as accurate as you can to the set because it then gets you halfway to some other things that you're gonna need. So even though that was a very subtle and quick shot of just the drone coming in and so forth, it also employed a couple of other tricks to help with the integration, which was reflections on the cars or shadows on the walls. So as this drone came down, no matter how subtle and even for a few frames of animation, it was casting a reflection and making shadows. And which you'd want to do anyway, but by setting up a lighting set, you're getting yourself kind of halfway there, so to speak. So again, there's value in sort of setting it up from the get go. This is interesting, isn't it? Let's see if we can do this and yeah, stereo. Okay, well, you're gonna get twice the fun here as we do this. All right, well, I'm gonna power through. Okay, so just a little bit about how that happened. So obviously I shot this, so like anybody shooting a scene, you would want to take some, bring home some data or some simple measurements with you. So I know roughly how far off the ground the camera was in this case. And so therefore, I know roughly where the ground level is compared to the camera. You can always eyeball this, but it helps to have that information. So in this particular case, I've just gone ahead and added a simple plane to the scene that's gonna act as our ground. Now here's the trick when it comes to reconstruction. What we wanna do is go into our camera view and essentially look from the camera view. So if I go to shift F to the first person view, I'm looking around from the camera's perspective. And remember, this camera is located at our 0000 point, which is the exact point from which the HDRI is shot. So now while I'm still looking from this view, I can start kind of lining up my scene. So let's take this plane, maybe just rotate it, tab into it, maybe stretch this out to this wall here. I'm not gonna, you know, for the purposes of doing this quickly, I'm not gonna get it exact. But if I go back to shift F, you see how now as I look around, it still stays true. Again, here I can start pulling this forward to match the ground here. Shift F, I can look around. And I say shift F because the moment I come away from that camera and I just start looking around the scene, it becomes harder to kind of line that up. It's not impossible, but once you start getting at this kind of distance, you can see we've lost it entirely. So by going into the camera view and essentially constructing the set while I'm in that view of the HDRI, I'm now able to set it up. So again, perhaps I might wanna take this wall here, extend it up, you know, let's say there. I might wanna take this angle here, extend it up. Again, I'm doing this very quickly and obviously you would take some more care with this. But let's say for argument's sake, that's our simple scene. So what we do now is of course, if we're gonna put a texture on it, we need to add a UV to it. So let's just do a simple unwrap. Okay, there's our simple unwrap. And what I'm gonna do is assign it a basic texture. Or in this case, two basic textures. Okay, so here's our material. We'll just leave it as diffuse. And let's have a look at our material setup. Here we are over here. Okay, there's our material. Of course, anyone who's done any baking knows that you need to now start associating a texture with it. So let's give ourselves a texture. I'm gonna just do one K for the sake of speed. So baked texture, one K. Here's the critical point, 32 bits. So we get that nice floating point lighting information. There it is. I also find it's always good to just sort of tab in to make sure I'm seeing those UVs there against that texture. And again, if you know anything about baking, you'll know. So we wanna add the texture in here. But we don't wanna actually pipe it into the color because we'll get a kind of recursive bake where it's just tempting to bake something that's already set as a texture. So there's our set. Let's go ahead, go to the environment to rendering bake. And here's obviously, you know, environment may be one of those. If you're anything like me, environment might be one of those things that you've just never really baked before. And let's go ahead and bake that one, three, five. Not too bad. Yeah, you're going, this is, this is a, I wanna make some smart comment about this being multi-threaded, but yeah. Okay, so we're baking in twice the time. Okay, so there's our set down here. And by the way, one thing I just wanna go back and say is that sometimes when you're building the set, it's also helpful to change the maximum draw type to wired. So if you're looking through the camera, you can line these lines up, sometimes it's easier to be able to see through it than having it be solid where it's starting to obscure some of the stuff you're trying to get. But anyway, let's go ahead and view that as a texture and you can see there's our set. So to the question that was asked a moment ago, no, this is not super accurate because the base of that set has got some of this wires here from this fence, but there's enough lighting information here and at least to get us most of the way there. And as I say, you could even go into this texture and then paint some of that stuff out or maybe this white sign is too much and you'd wanna paint that out. But then as I say, once you've got that set, we're now using that to light this. So right now it's not gonna light because it's just a diffused texture. So let's go ahead and thread that through. And what I would do at this point is change this to an emissive texture. So emission, push that through there so we take our diffuse out of the equation and if we render this okay, there's rendering and let's just check that the emission is working. So if we pump that up clearly, that's too high. I'll be honest with you, I'm not entirely sure the math of this. It always seems to me that somewhere one or 1.1 seems to be right, but I've been pretty much eyeballing it. So I can see now in rendered view that there's a sort of a seamless match so to speak between the baked texture and the HDRI. And again, if I go for you to the actual camera, I should essentially not be able to see where the edges are, right? Because it's exactly matching and when I pumped that up with the emission, now you can start to see the baked textures appearing. So again, just very quickly, and then I'll wrap, but there's our Suzanne lit from the HDRI from above and some of the ambient light behind the camera coming in, but majority of that lighting information is also coming from this reconstructed set. And if I take that set out of the equation from a still image for argument's sake, that might get you what you need. But the moment Suzanne starts to move around, in this case perhaps dropping into the camera frame or moving around, moving back into that alleyway and so forth, the lighting conditions are gonna change. And in the case of the short clip I showed you, I actually set up two sets, one lighting reconstruction set here at the camera position for the drone that comes down, another lighting set position from a second HDRI that was shot back in the street in the background of the shot back here, sorry, back there where the larger drone comes through. And pretty much essentially setting up into a filmic rendering workflow and using the lighting set and the HDRI meant that I essentially had a seamlessly lit integrated CG element in the scene without doing any kind of cheating beyond that. If you were to look at my compositor flow, there's no kind of color adjustment or color balance adjustment because the lighting is the set. So thank you for sticking with the technical difficulties but I hope you've learned something. I certainly did, thank you. Thank you.