 So hi everyone. It's really nice to be finally on stage and the nervous waiting is over Before I start I want to talk a little bit about myself. My name is Joe. I'm from Austria I've been working in the 3d business for over 20 years now I was working with Maya for a long time and I switched to Blender four years ago and never looks back basically I work in Austria at the design company that's called kiss car so Kiss case a design company and basically designs the motorbikes we will see today. I myself. I'm not a designer I'm just a visualizer a render guy, but nevertheless We do great work At kiss car they work around 250 people as I said mostly designer most of them are based in Austria Summer in the US and summer in China My visualization department is fairly small, but we manage A few years ago when I started at kiss car we already used of this motorcycle cat data to create some online Configurators, but as our image has got better and better KTM so I forgot to mention KTM is the motorcycle company It's one of our biggest clients And as our image has got better and better KTM decided to stop taking studio pictures for some of their motorbikes And start to use our renderings so nowadays most of the renderings you see on the web page Or when they release a new motorcycle. I actually not photographs, but our renderings Yeah, and this is what I want to talk about today. I want to show you how our pipeline works And what steps you have to do to get from the card data to the final images Most of the time when I tell people what I do they ask me Oh, so you have to create the motorbikes yourself, and I tell them no no I get everything I get all the cut data This is actually the the data they use to produce the real motorbikes So basically it doesn't get more perfect when it comes to modeling And so people say ah you only have to press a button and I say yeah, sure I only have to press a button. Actually it looks like this So I press the button and if those people think they know a thing or two about 3d they go like Yeah, you have to use an HDR image because if you like something with an HDR. It's always good So you use an HDR you get something like this Then they say yeah, well, there are no materials on the bike. It's clear that it doesn't look good So let's put on some materials. I think you're getting my point by now Even though if you have the best data available Available it doesn't mean that you get a good image in the end But if you put in a lot of effort and work you maybe get something like this And to give you an idea about the data we use and those motorbike models consist of around 12 to 20 million polygons it depends on the bike we visualize and The harder part of it is that we have around three to five thousand different objects in those in those scenes So it's a lot of data we have to handle Here just to show you some some examples of the work we do Most of the time we have a studio rendering setup We do images of the complete motor bikes. We do close-up shots of the bikes We do images just of some parts of the bikes and we also do images where we cut up things like we cut up The engine and we show the inner workings or we cut up the suspension and so on So our basic pipeline looks like this We get the cut data from KTM from our engineers from our surface modelers We have to convert this data. Then we import it into blender In blender we have to clean up everything and prepare everything for for the next steps In the next steps we create the shaders we assign all the materials to those five thousand different objects We create groups or collections We render everything in cycles and then we do the post-production the post-production. We actually Do not do in blender We do it in nuke because it turned out that blender is a little bit too slow because we have really high-rise images and Unfortunately as a test blender is too slow nuke is also really slow when it comes to compositing and those high-rise images But it's it's the way we have right now Okay, so let's come to the first point the conversion and the import as you probably know cat data consists of nerve surfaces and Blender and nerve surfaces as we already heard a few times On this blender conference don't go together very well So we have to convert the data before and we do this conversion with the help of alias studio and Maya Yes, you heard correct. We use Maya just for conversion. That's the only thing we use Maya for And after this conversion We get an fbx file and we can import this fbx file into blender and then we get something like this So this is part of a data set of a bike and it looks good at the beginning when you look at it But if you would be able to move the few part around You would experience some serious performance issues because something in this scene is not right Fortunately with blender 2.8. We now can use the workbench engine and we switch the shading mode to assign a random color to every surface that's in the scene and For this kind of problems we have in this scene. We can easily spot What's the case so if I just select this one part? I can see that so this is an engine cover and this is actually a really complex part Especially on the back side of the object that we unfortunately can't see right now. We have a lot of surfaces and That's the way that that knobs models are constructed. They are constructed with super many surfaces and When we have complex models like this one Sometimes the converter doesn't know what to do so it just does nothing and we end up with a part like this This part alone has three and a half thousand different meshes and that causes the performance issues so Sometimes when we import the whole engine and we get it like this we wait for the import alone I think an hour or so and it's just because the surfaces are not stitched The solution is simple. We just join all the surfaces together In house we have a little tool that can run this process over the complete data set of the motorbike So only the surfaces get stitched that need to be stitched and the rest is left alone But as I said, it's a huge performance boost because otherwise the scenes are just much too slow So but there's still additional work we have to do before we can start with the render stuff So we delete or we hide all the data. We don't need for example the inner parts of the engine Nobody needs to see that and that kind of image or if we have Objects that are below the seat or below the fairing we can just hide those parts and we don't have to think about it anymore Then we hide all the empties. That's another big performance issue Because every little screw on this bike has a lot of empties attached that position the screw in space So just by hiding all those empties we get a big performance boost Then we also have to model a lot of things ourselves For example all the tires so all the tires you see on the bikes are modeled in blender Sometimes a really nice work and sometimes it can be a pain in the ass Then we have to remodel all the seats because cat data of seats just is not looking organic enough It's not looking like Like a good surface or if you have you know a nice fabric that's soon together. So we remodel all the seats We also do all the welding on the frames and on the exhaust So when you see some welding lines where some metal parts are welded together This is also done in blender and it's those are small things, but they create a big boost in realism and Finally we have to create the cables not all of them some are in the data but a lot of those cables that are in the images are also created in blender and this can be a hard work sometimes because We don't really know where those cables start and then so we have to ask the engineers what's happening on the bike Yeah, and with this part out of the way we can start creating collections Or groups with ever depends on the the blender you're working with So we create collections to group together certain parts of the bike For example, we have the upper fork. We have the frame. We have a front tire back tire and so on This enables us to start a new blender scene link all those collections in the new scene we get a new blender file with a small scene size and Handlabel amount of collections and with the help of those collections. We can easily make different variations of the bike For example in this case we have two different colors of the bike So we can just exchange this one collection that contains the different fairings and we have two versions In other cases, we can exchange the whole engine or we can exchange the exhaust or the seat And of course we can also rig the bike We have a fairly simple bike rig that allows us to position the bike in space We can also animate it a little bit with moving tires. We can change the suspension We can change the steering, but it's really easy. It's just for us to play around a little bit and To show the guys who don't know what this is Yeah, so now the main preparation things are already done It takes about two weeks to get to that point and Then we can start with the material creation and the shading so I I write here the fun part starts, but actually it's not always fun because When you look at the bikes, there are a lot of dark plastic materials and they all look nearly the same But when you look a little bit closer, you can see that they are all different So they all have different textures. They have different bump maps. They have different different variations in roughness and They have different shades of black. So they are all basically black, but they are all different and This is where it really gets hard And it's the same with metals. So we also have a lot of metals of course on the bike They also look nearly the same all different and all the parts have to you know, they shouldn't look They should look new because the bike is new but Not super new because it's not 3d software new so we have to create a lot of textures that just have tiny variations in roughness and With these tiny variations in roughness we create a sort of depth in the materials and we give the materials a little bit more character We also have a lot of scratches and things inside But we we shouldn't go overboard with those effects because it it happened to us that we had to retouch the final images That we did because the client said that the bikes look too old basically, so As much fun as it is don't overdo it in substance. I have to say to myself don't overdo it in substance You have a short video where we can see a few of the of the shaders The basic shader setup we use is fairly simple most of the time we just use PBR shaders Sorry, not PBR shaders. I mean principle shaders with PBR materials attached so we use substance painter and designer to create a lot of textures But we mostly only box map those textures because it would just be too much work to create UV coordinates for For parts like this would be too much work We also use a lot of blender procedural textures that we created and For some more complex materials we use a kind of uber shader that I did in blender that It's also basically a PBR shader But has a lot of things built inside that we need in our day-to-day life So for example with this uber shader. It's easy for us to create car paint materials So we have built in flakes. We can create special metallic effects with it and clear coat effects and so on But basically those are simple PBR shaders. It's it's all in the textures Basically, it's all in the roughness textures. They just have to be good and then the material looks good Okay, we've all the textures out of the way and all the shaders assigned We can start with probably the hardest part of everything with the lighting As I call it here the art of defining shapes because that's basically what it is Let's go back to the bike from the beginning The thing with studio light setups is that it looks super easy when it's done So the final image should look really effortless Basically, you should look at the image and think that's a nice motorbike you shouldn't see the amount of lights that that are in this scene and You shouldn't see all the effort that went into this light The purpose of the studio light is that we show the surfaces. We should show the volumes of the bike We should show all the shapes You should see the quality of the materials, but you should not see the work that the 3d artist did and If you did your job good, then basically that's what you get So somehow in the end you should see the vision that the designer had when he when he first started Drawing the first sketches of this bike Sorry forgot something for example when you look at this image Take a look at the reflection on the tank Take a look at the reflection on the fairing on the front fender. We have highlights on the frame We have highlights on the exhaust We have back lights on the rims and on the tires So actually there's a lot going on in this image But you should not be able to see how much lighting was really done. It should look simple The way we do our lighting is we use area lights They have a little shader attached that creates soft edges on the light because Those soft edges just make much nicer reflections You know if you get this normal area light reflections You get just rectangles on the surfaces and if you have more than one Area light you get more rectangles on surfaces that overlap that does not really look good Normally we have around four to six different area lights in such a scene if we need more than six area lights We know that something is wrong with our positioning of the lights and then we have to start all over again And we use a few spotlights just to create some highlights on special parts of the bike I want to show you now three short movies the first shows a Possible way how we start the lighting process For you to better understand what's happening. I just put one material on the whole bike So it's just one dark material And so in this first movie you see when I introduced the first light into the scene The first light is really important because it creates kind of a baseline for the whole lighting The first light should create the main reflection on the bike in this case probably on the tank and on the fairing and After we have positioned the first light we can go from there Now the problem is motorbikes have very complex shapes on cars for example you have very few visible surfaces and Most of those surfaces were just designed to create nice reflections on a motorbike There's a lot of of things going on that are out in the open So you see the engine you see parts that you normally wouldn't see that are not really designed for creating reflections and So you you have a lot of objects that look in very different directions And they are always ready to pick up some reflection that you really want to have in the final image and that's what makes it hard In this case Now I hope that the loop is over soon in this case when I start with the when I start with the first light You see that sometimes I get a nice reflection on the tank But the same light creates and not so nice reflection maybe on the on the front fender When I move the light a little bit I get maybe a nice reflection on the front fender, but no good reflection on the tank anymore So I have to reposition the light until I get a good reflection and then I can start with the second light And as soon as I introduce the second light, I get a second reflection That's doing something that I don't want it can overpower the first reflection but remember the first reflection is my main one so I really want to keep this and It just can change completely how the lighting in the scene works So every time I put in a new light I really have to watch out not to create any reflections that I don't want to see in the image and that's especially hard Hard when it comes to bikes in this image you see the difference between the normal area light and The area light with the soft edges that we use so this would be the normal area light and now the light with the soft edges Basically what those soft edges do is that they create a nice gradient in the reflection So that you not get just one white or gray Rectangle as reflection, but you get a nice gradient reflection and Borders that are not too hard We have the possibility to make these borders harder or softer But you have to be very careful because if you make the borders too soft you Create a reflection that looks soft and that means that the material looks different than before Because if the material has a high roughness value it creates a soft reflection and We have to be careful when we use a light that creates a soft reflection because we don't want to alter the way that the material is perceived So now everything is done. We have a few lights in the scene. I can start adding the main light I can start adding rim lights back lights light for the front light for the back a light for the tires and so on and We start to get an image that looks really nice Sometimes with a lot of images I don't know what I'm doing anymore in this scene and when that's the case I just turn one light to a different color in this case I turn the light to red and then I can easily spot which part of the bikes this light Influences so if I want to change something in the end I still can do it if I don't change the light color It's it's really hard for me to tell what this light is doing Okay, and I see the rendering already started so we are not getting ready to render, but we already rendered and Just there it's not really that fast in real life, of course Just to get some some facts of our renderings We render of course everything in cycles our standard resolution is 6k by 4k. So it's fairly big It's also 6k by 4k when we do the detail shots. That's why the materials have to be really good We mostly use kryptomet. It's a big big time saver now that we have kryptomet Sometimes we also use diffuse and glossy passes, but it depends what we want to do in the post We use full-float exr files as our file format with an zip-s compression for the Nerds in here zip-s compression is just much faster when you use nuke Compared to the zip compression 90% of our images are rendered on the GPU again because it's just so much faster than the CPU and Just sometimes when we use a lot of displacement maps on the tires for example Because we didn't have time to model the tires then we have to create some displacement maps then we render everything on the CPU because the Doesn't fit in the GPU memory anymore And the render times we have between 30 and 90 minutes per frame on a machine with free Titan X GPUs built inside and I now I can't remember anymore if I mentioned it in the beginning we have to create around two to three hundred images every year so When you count in there all the test renderings then the render times really sum up Okay, now we can start with the post-production and we switch everything over to nuke So before we start with the color correction I want to get something out of the way concerning the few transform and if choice of vodka Listen to this. Please be gentle with me. I'm sure I'm saying something wrong now because nobody really understands what's going on there But this is just how we do it and how it works for us So in blender, of course We use the filmic few transform to get this nice look to get the nice highlight role of and a lot of dynamic range In the image and so on now because we render EXR files we get a linear encoded image So we lose this nice filmic transform. So we have to recreate the filmic look in nuke fortunately that Should be fairly simple because we have OCIO so open color IO and we can use with the help of an open color IO node in nuke we can use the same look up tables that we used in blender for creating the filmic look so basically we have exactly the same in nuke and We apply everything and it looks good actually it doesn't but today I don't have the time to explain everything to you But if you're interested ask me later Yeah, and that's what can happen in nuke we start creating a big node tree It looks complex. It isn't in the end because it's just a lot of color corrections of all those tiny parts on the bike And I know that a lot of guys of you now think yeah, why don't you do it right in the first place? Why don't you create the shaders that look the way you want it? Why do you have to do it in the post? Well, unfortunately the materials never end up the way we want them to look You know, even if you put the same shader on a part on the front of the bike and on a different part on the back Of the bike the same shader looks completely different because you have different lights on the front and on the back And so that's what we have to compensate for we have to change the exposure and the contrast on Many different parts of the bike to get a nice look and what's even more important The bike has to look the same in every image that we do So we have to color correct every image or every part for every image You know, they sell the bikes with those images So the colors have to be really accurate the materials have to be accurate. Otherwise KTM gets a lot of complaints What you see here is Cryptomet working, so if you don't know cryptomet the parts that are shown in yellow are basically the masks you get Yeah, so if you see that we pick a lot of parts do a lot of color corrections but as I said, it's mostly just changing the exposure and just changing the contrast and Again, you have to be careful when you change the contrast too much. You also change the perceived roughness of the surface so a material with Low roughness value has a high contrast But if you change the contrast you change basically the roughness value of the material sometimes you can use that To your advantage because the shader was not correct Good, then let's see what we can do in nuke and we start with this After nuke image because this was one of the first Bikes that I did in high res and it was a classic example of we fix it in the post Because before nuke it looked like this so you can see Yeah, I had to color correct a lot and now I'm thinking I don't know what I did with my lighting setup. It was just horrible This is another bike This time this is before nuke It already looks good some parts are a little bit too bright, but basically everything is there After nuke you see the colors have changed a lot the orange especially that's really hard to get right in the rendering and The contrasts of the bike also changed a lot So it's super important for us to have a lot of control in the post production But we are still not finished because the final finishing of our images we do in Adobe Lightroom We do it in Lightroom because we have a lot of images and we need a good overview of all those images because we have to Make final adjustments sometimes in Lightroom. We have to adjust the The brightness levels of the images and sometimes the contrast so that all the images look the same in the end Lightroom also has the advantage that we can easily export a lot of different formats very quickly And for example if I change something in nuke and resave the file all the Lightroom adjustments again in Lightroom I don't have to redo them anymore and Another big thing about Lightroom is this little slider. That's called clarity. I don't know if there are some photographers around here Clarity is an effect that you can't do in nuke and also you can't do in blender It's mostly in raw converters where you can do this kind of thing Clarity changes the local contrast of the image So it's the the mid-tone contrast it doesn't change the overall blacks and whites But just the mid-tones and it helps to just to make some parts really pop So when we look at this image before Lightroom and after Lightroom, this is before it's already really nice. I think This is after Lightroom looks better But when I zoom in a little bit and now you look at the engine and the exhaust You will see the big difference just with this little Clarity slider those metals just look much better with with an effect. That's basically real-time Yeah, and so we're finally at the end of our pipeline I Want to say thanks for watching. I hoped it was something interesting for you By the way, we are hiring at the moment So if you're interested in this kind of work come to me and talk to me And if you have any questions, please come to me as well. Thank you