UE4 Livestream - Rebirth: Worldbuilding with Houdini

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
thank you for everyone that's joining listening on the livestream or watching it after the fact and thank you as well to epic and Unreal Engine team for for having us today so we can talk about how Houdini was used in the awesome rebirth cinematic produced by quitzel like Ben said in the chat we have Mike Lewis Damian and Ben so they can answer any putting any questions that come up and then later on at the end of the presentation we also have time to cover a lots of questions that you might have yeah so let's let's start so to begin with not directly jumping into rebirth I just want to briefly mention that this is actually not the first time that we did a project for GDC together as quick so last year we built a game called brimstone and this was one like I said a quick alongside effects project it was led by side effects and was assisted by quitzel Victor in this case with all the art and all the building of the levels and the link that you see on the slides is a link to all the talks that came out of this presentation so which is why I mainly wanted to mention this it shows how you can use mega sense assets together with who do you need to build awesome games or cinematics or anything else you want for Unreal Engine and this year of course quick sublet and we helped and that's what we're talking about today so this project rebirth once again a huge collaboration between quick soul building a bit for visual development ember lab music audio narrative and side effects so let's just quickly take a look at the cinematic so that we all know what it is and we've all seen it I'm sure you've seen it before but just to to play it will play it right now [Music] [Music] adaptation [Music] the ability to learn from past experience the use of knowledge to alter their environment these virtues defined our creators and drove them to the brink of destruction but we cannot exist without them we must save her what of our creators exists within us humanity has always had the potential to recognize and choose a better way to be save humanity [Music] was bringing her here the right choice I mentioned in chat so I can watch that every stream don't mind it which add audio because I know dota is really good too but I can do dandy after the stream cool we're back awesome cool yeah so that was the cinematic so last week you guys had a quick sell on the stream we had Galen Davis talked about all the cool stuff on the production side of things in a pre-production and so forth but today we'll talk about the contribution that side effects bikini did so I have the honor to present the work that the sine of X Games team did together on this project so first let's just quickly talk about what Houdini is so we're on the same page so greenie is an advanced procedural modeling animation effects simulation rendering and compositing package so it has a wide array of things you can do with it and the most important thing is that Houdini's power is based on procedural workflows so working in Houdini involves creating networks of nodes similar to like working with blueprints inside of unreal that you connect together to basically a complete or do a task that describes what the computer or in this case Houdini needs to do to accomplish a task so these operations or procedures if you will together give you a very powerful tool kit so at any given time you can go back basically in history and modify any of the nodes before the final note so as you can see here after the pipes have already been laid out I can always go back and modify the initial curve that was generated as sort of like the skeleton for the pipe and this is something that you can't just do inside of Houdini you can actually also do this inside of unreal with the Houdini engine which we'll talk about later so basically what it comes down to Houdini is all node based it's self-contained modular great for pipelines right so you can author a cool tools and workflows in Houdini make nodes of them and share them with other people basically like functions instead of unreal ok so now we've seen somewhat more of a programmer art version of Dini assets and next up I'm going to show you some examples made by Rush the effects so as you can see here all these different assets that you have they're not just you know modeled once and then they're static as is these are all live smart assets right who do you need digital assets meaning that all of the the properties that define what an object is like for example the width of it height of it and all the base shapes you can always go back and modify these with sliders basically letting you build an infinite amount of variations of that prop that you have so shout out to rush the effects for this video if you want to see the full breakdown you can go to deep email link shown at the bottom of the slides so like mentioned before the artist team that was actually assembling his scene said if Andrea was really small three people but you're Dini team was up actually also very small so at the top we see Richard from quick soul Richard is qixels internal Houdini champion working on all the internal Houdini path lines they have and then we have Louis Mike and myself from the side effects team which is all about the breakdown were showing here today but besides that person not Carter this here is Damian who is a developer building the Houdini Engine plugin for unreal so I also want to thank him for the support he gave us during the project and just a general shout out as for the cinematic team like I mentioned before three artists from quick soul side effects like the three tool developers we did not build any of the shops that you saw during the cinematic right there was all the work of the fantastic quick so our team on the project and without these awesome artists tools you know are pretty useless like they don't do anything so you need awesome artists to build cool content right and without them it wouldn't have been as successful so the things we'll be talking about today are effects mesh processing terrain world building and the mega structure detailing for the effects I took some of the questions that were asked last week about the the fog so I made some videos to show how that actually works inside real so the effects people said that it gives lots of you know magic tricks and and also so you know weird things but it was actually pretty straightforward what we did with Houdini and unreal so all the fog and you see or most of the fog is really just cards with texture sheets on them so in a couple of slides will show how those type of sheets got made and of course also some of these stock actors that unreal ships for fog but for example exponential fog so here we have a video of you know an example of fog so to generate the fog before any of the the rendering inside of unreal we decided not to generate these kind of cards with simulations inside of Houdini not because it couldn't do that of course not because Houdini is awesome at doing that but because the artist that I mentioned before didn't really have any effects experience especially not doing effects inside of Houdini so if we were to have that have to teach them how to use these you know for example smoke solder or a pyro solver sort of fini that would have taken you know a couple of weeks maybe which is time that we really did not have on this project so it would really hard for them to art direct the simulation you know they could get it working and get something cool but not something it would look exactly the way that the art direction of this project acquired so really all the fog is in this project is just evolving fog on a flipbook and how we got there didn't really matter so the approach we took is really cool so here is an actual render of what was used in game so once again side effects built the tool right that allows you to really easily tweak all these things and in the artist at quick so they took those tools ran off with it and were able to create these cool-looking results without having any effects experience right but they were still able to achieve the look that they wanted for a project so how did that work we came up with a solution where we have multiple levels of noise at a lower resolution to very quickly get your main shapes and you know define an overall look you see here and then we can blend between those right at the course level which means that you wouldn't get any small islands of floating around if you were to multiply more of a high-resolution fog which you would do which would get if you were to do that in shade rain engine then what we did is we we faded out the volume around to the bounds of of the frame that's being rendered so you can see the square on the screen and then lastly we affected it with higher frequency noise giving us this really sharp sharper look of the fog which is more in a towards the direction that they wanted and since this is just you know noise that were multiplying inside of Houdini this was really really fast to tweak almost real-time which means that the artists were able to get more iterations out and therefore more variation and therefore in the end a higher quality end result so that's that and so the text receives that I mentioned I think we used a maximum of five or six unique ones for the entire cinematic and here we see four of them so how does this work you can see that there are basically eight times eight unique images on on one of these ships and what it does in the shader is it basically just takes one of these squares and then for every frame it moves to the next one giving you the illusion that is you know it's evolving it's a live video even though it's actually just frames playing by right and then together with you know cool blending tricks inside the shader and some scattering you get something that looks really great which is what we can see here on this slide so if this is stuttering as you can see but this is just a row of texture sheet right so moving from one frame to the next without any blending and we've also made the fog somewhat more dense than it is in the real deal so it's easier to see for this breakdown and then here is the the actual final video used in the cinematics as you can see it's nice and smooth it's less dense and it looks a lot better overall so it actually proved that its cars and it's not some stuff I'm making up I made this video instead of the Unreal editor so in the world outliner I just type steam because we call these cars steam cards and as you can see it's literally just a plane with material on there with us of parameters at week like for example the emission how emissive is the fog you know it becomes a lot brighter when you turn up the emission the speed and so forth and as you saw I moved towards the card just to show you that yes indeed it is a flat 2d thing and then now I'll actually also show you how that looked like in the end so here we have sequencer and then I click in or lock into the camera that we use for rendering and there we go we can see that it is those cars that I just showed you so that was the the biggest most noteworthy part of effects that we did for for quick soul next up we'll talk about asset processing and I think that this is one of the most important things that we have to it because of course if everything comes from mega scans you know there's lots of geometry to process before it can go straight into unreal so that's what I'll show you so the first type of processing that we did is actually generating level of details you might ask why level of details for a cinematic well the final renders in a cinematic you know they're using cinematic quality LEDs right so that's the that's the three hundred thousand polygons per rock kind of thing but if you have an entire scene with let's say hundreds or thousands of rocks even assemble together if you multiplied it by a 300,000 polygons that's gonna get really slow meaning it would cost more time and time is something we did not have for the project so with these LEDs of let's say the the one that you see all the way in the bottom right of 10k that's the proxy geometry that we use to actually assemble the scene and get an overall look of how we want it to look right which meant that is nice and light Alondra fast iteration speeds and then once you know everything was assembled the way that we wanted it looked great then you can just switch the toggle and say you know photo rendering use the cinematic LEDs which is you know really easy another important piece is the the car so this was a concept rendering from Fausto martini it's a car that cup modeled and extremely high resolution which of course had to be decimated before we could you know bring it in real for real-time rendering and here we see that same car from from a lot of angle so as you can see it has you know lots of detail is a really high res mesh which we had estimated using Houdini so here we see that car inside of the editor and the mesh in the bottom right and of course the UVs have come with it so since the car just need to beat estimated and was not really the centerpiece of the thing we wanted to show it's still an important piece but not the centerpiece we decided not to spend too much time manually retooling the car - quad geometry because you know for a simple poly reduction and a date you don't really need that if it's not a centerpiece or something it's going to get animated or raped so since Houdini makes these things really easy the decimation you Ving and the baking all procedural we decided that this was a really good way to proceed so what you see here on the right is seven nodes even though you really only need five that's all you really need and who do you need to get a clean decimated geometry with UVs so at the top we can see a file load the file load all it really does is just impulse a file from disk so an FBX and obj file and lots of all the formats that we support then we have this excess align swap what it does is it just automatically centers the object in the middle of the origin it scales it to the right size just by taking a check box then what it does is we have a voxel mesh node which just takes any type of geometry as long as it's closed and it converts it to a volume and read the higher resolution volume and then converts it back to geometry the reason we do this is to prevent any you know garbage bad geometry that you might have in your geometry formulas a CAD mesh or anywhere else to prevent the decimation process from trading a clean triangle mesh right and that's what the next node does the poly reduce note on the poly reduce node you can literally tell Houdini take Tish this mesh from any you know any poly count and bring it down to let's say thirty thousand or ten thousand or whatever you want or give me you know one percent of the number of polygons that you have and you can see it says reduce 2.20 percent you know which is a huge reduction you set the normals you know make sure that you almost look great again and then you plug it into the audio UV node which just automatically unwraps it to the UVs that we saw before and then we stash it which is just you know the mesh that we can output output to - unreal I also quickly wanted to show you how the baking would look like anybody needs so just a disclaimer we did not do any baking for this car for this project but just to show you how easy it is to do this kind of baking I dropped down a baking note to show you you just plug in your low poly on the left side and your high poly on the right side it baked and you have your textures so to show that in action I just want to show you you know a baking process happening so on the left side we can see that you know we have our low poly mesh which is 10,000 or 11,000 polygons and in the middle we have one with two and a half million polygons and with baking you're essentially taking the high resolution mesh taking all the details it's normals and baking it down to a texture on a low poly mesh right so how fast is that in Houdini I'm going to show you so I'm going to bake a 4k mobile map of the meshes you saw before so I'm going to click the bake button now and you will see a pop-up that shows seconds timer three four five and it will take approximately nine seconds for this mesh and in nine seconds we already rendered a 4k normal map you know which is super awesome once again the faster your processing speeds are the faster you can iterate meaning in more time for creativity really unlocking the capabilities that an artist might have another cool tool that we built or pipeline rather is something we called poly cruncher I believe for this project you could just tell it to bring in a mesh or a library of files and it would also import a texture which will had a fuzz map which basically showed where there was moss on the geometry it hardened all the normals and smooth the regions where there was Moss then it automatically spit out LEDs right LOD zero LED one led to you know see level the game rez model and the block our proxy model and also also channel packing these textures together so every single asset had basically a displacement map a roughness map and a couple of other maps you can see here we should just combined together so for example the roughness map went into the red channel something else when it's in the blue Channel and something else wouldn't do green channel and if you have to do that for over a hundred plus meshes which is what this project had which each have you know three to five textures per mesh that becomes something that is you know not fun to do so imagine being an artist and someone tells you okay you know starting tomorrow you will have to you know create LEDs by hand and channel packed textures for over a hundred meshes you're gonna become really demotivated and you know bored with what you're doing so all the assets in the mega scans pipeline for this project went through this tool so how long did it take to build a tool like this so I talked together with Owen the artist who is going to use this to process all the tools and we spent around an hour and a half for the final tool right and that included brainstorming with the artist so initially we did a call with Owen we talked about what is it you need you know what are the things you want to be able to tweak what are the things you want to be automated and then we just built it so within an hour and a half approximately we had this tool that we could just give to pixel and say there you go you can you know process your entire library and instead of it taking a week or more than that to process everything it just took a matter of hours which meant that as soon as something was done it just ran through the pipeline in something like thirty seconds and it was done ready for usage in unreal so this meant that the artists were more motivated and had more time for creativity once again letting the artists do their thing right being artsy inside of unreal unlocking their full artistic capabilities next up let's talk about world building and terrain since we had a lot of questions there as well so a big important tool that allowed us to basically merge these sort of Cliff assemblies from mega scans right these rocks that were all packed together cliff looking shape with the landscape we wanted to remove any hard intersections between it so if you have less a flat plane and you intersect it with a rock you might get a really hard intersection between that which doesn't look good because you know you want your normals to be nice and smooth and in real life you know you have dirt building up there so what you see here in this video is a tool that just takes a landscape you know crops a small region out of it so it's faster to work with inside of unreal it takes in the cliff assembly from the artist that they placed and then what it does it automatically you know generates this build up that you see and then once it's done that it actually runs an erosion simulation inside of unreal using Houdini engine to create these nice flow lines along the rocks so that you know in the end once you apply all the shaders and all the textures you see the moss actually growing where it shoots grow instead of just you know being placed by a noise mask or something else like that so this is all happening inside of unreal in the end we ended up not using this approach because we decided to go with static meshes for the landscape because it allowed us to do more things like products painting and so forth and a higher resolution mesh overall but this is still a really useful tool you know that we're publishing for all the uses so if you already have Houdini and you download it the game development toolset you can get this tool it's called dirt skirt so the thing I just showed you what are the steps it's doing you have your initial terrain and your mesh to the red part here and the top left is your mesh you then project your height field or landscape up to the rock so we can see that now we have sort of you know as shape that's sort what someone looks like the rocks we mark the region of where the rocks are in the part that we just protected up and then we just smooth it like you can see here so that we have this nice round soft blends happening between the rock and the terrain and then we generate the flow Maps okay so the flow maps are basically just an erosion simulation that we run any the only thing we really grabbed from that is these sort of flow lines which you then multiply with our mask that we had before giving us this nicely eroded look that has no heart intersections with the rocks and then together with the rocks we can see that you know this looks really smooth compared to here so how does it look like inside of the engine this is the comparison it's really hard to see which is which because we're quite far away so we've highlighted the region where the things have changed for this project like I said we didn't end up using it because we went with meshes for landscapes and we didn't really have any shots that had these of cliffs assembly is really close to camera but if you have a game where for example you know people are walking all the way up to these rocks you know more you know real-time environment to a place can walk around this really makes a big deal of the quality of your game overall so as for the actual terrain what you saw before was just you know the assembly or combination of rocks on the terrain we of course also needed to create the actual terrain itself so Icelandic terrain is very unusual if you look at it has lots of unique elements to it if you look at it for a while so we couldn't just use any of the generic erosion solvers out there on the market because they were simply not up to the task same goes with Houdini if we just use the default erosion solver they came with without any tweaking or customization it didn't really achieve the art-directed look that the art directors were requiring for this project so what we started with is actually going to open took a bog rafi to download a digital elevation map from there okay so we just sourced a real world location for realistic mountains and hills that were assembled and further processed inside of edenia with erosion and so forth so these different maps essentially adjust height maps are accurate to around 50 centimeters right per pixel it's also completely open sourced and if you want to find the locations that we use for the project it's actually in Alaska it's not an Iceland spoiler you can find them at this location if you want to try and replicate this yourself so like I said after doing some basic erosion tests with the stock Houdini nodes we resulted with this it you know sort of looked okay but it did not really match the reference that we had received from the acquittal our team for the tool or the tool set that we want to build for them and it was pretty difficult for us to precisely pinpoint what exactly made Icelandic terrain look like ice tiling terrain initially you can see it and you know you can you know make some sculpts with noise and so forth in Houdini or anywhere else and you'll get something like this but it's not exactly Icelandic terrain so when we look closer at Icelandic terrain is is that we saw that the ridges and valleys of all these hills and mountains actually has lots of erosion happening on just those two parts and not allowed on the body so the parts in between those two kind of like lava that's flowing through there right eroding the tops and at the bottom parts and the artist would need to have control over where this erosion needed to happen so we would we built tool that automatically masks these regions for them so they would just need to play with some sliders and masking some things by hand if they wanted to to have the erosion happen when they wanted to because once again the erosion happening on this rain was definitely not in a uniform distribution throughout the landscape so once again building this Woodstock indoors in Houdini didn't quite do it for us but since Houdini everything is built with nodes and you can dive inside we were actually able to modify the erosion solver to get it somewhat closer to what we wanted it which is a very powerful thing right so here are some more work-in-progress shots where we kept getting closer and closer to the target that we had in mind which is the step which is a time step where we felt comfortable enough bringing these meshes like I said before we used meshes in unreal to bring this inside of unreal for assembly right so we already knew these are all the kind of masks that we can use inside the landscape material right we have the moss layer we have a debris layer we have the flow map layer and all that kind of stuff which we then were able to multiply or assemble with all the mega scans textures that the quitzel team gave the art team which gave them you know something that we see here in the bottom right which then later of course was refined more and more it was really important to do this as soon as possible because the terrain and landscape was almost in every single shot of his cinematic if not in every shot right so the sooner we were able to test this workflow and get the artists you know something in their hand to play with the better the final quality would be so once we had you know that Rd part figured out you know we built the tools for the quick artist to play and Houdini to Bill T's erosion and so forth looked good we gave it to the art art team right so Owen took these tools that we built for him the workflows disassembled it and reassembled it to work the way he wanted which then allowed him to build these really cool initial tests that he did to test whether or not you know it would work yeah so this was this was really cool so to see the mesh is inside of unreal and I wish I think hasn't been show before is as you can see it's literally just a mesh it's not a landscape actor and every single mountain or Hill or whatever else in the project that wasn't very unique was just one of these hero pieces right so inside of Houdini we build you know a couple of these hero pieces which then were reassembled inside of unreal to create these nice Assemblies of a mountain range as you can see if we rotate the terrain around all the textures are actually a world space using will space UVs meaning that if you were to move a mesh around and intersected with something else you wouldn't get any disconnect between let's say the mass texture from one mesh to another like again all the monsters were made using this approach except for the unique ones the unique ones is the thing that I'm going to show next one of which was this shot the shot looks pretty straightforward we thought that we were able to build this using the tools that we already gave the quick artist but we pretty quickly found out that this was a really tricky shot you know we had our concept art which is what you see here and it had a very distinct look we have these three Hills here right and if you look closer at it is actually harder to do then it looks try controlling noise to try and do that so initially oh and the artist who was starting with this shot he tried starting with a slope we see here applying moist noise to it to get these three Hills you can get something that looks close but we wanted something that looks exactly like the art directed piece right so once again we took the procedural tools in buddhini and gave them you know some controls that allowed for more art director wall work to be applied right so how did that work this is the actual network or Houdini file user is for this particular scene and all it literally is it's just three cones which the artist can you know move around project that onto a height field which is what it called in Houdini and then some transform notes which allows us to basically just play God and move these mountains around to wherever the artist wants them to be right and this makes it really really easy to composite these mountains together together to look one to one with the the concept art that buting a bit created so this is a this is all Owen doing his cool magic work and then here we can see the actual final thing that was used in the cinematic once again it's just exported as a mesh we exported out all the the mask for the moss and the flow maps and all the debris and all the rock and so forth which is then what gave us this so this is the final shot inside of unreal with everything applied so the geometry shader is stacked and so forth which then if we compare it to the initial concept art we can see that it's really really close right so the top left is the concept art and here in the bottom right we can see the the final shot so once again people say yes Houdini is a very procedural tool you can do lots of things with noise math and all the cool stuff but you can actually also art erect anything as much as you want right so Houdini allows you to make it as procedural as you want or not as procedural as you want right as manual as you would like that makes Houdini a really powerful piece of software to these really cool landscapes or geometry or anything else or unreal and next we will building is things like foliage and for foliage will use the Houdini tool called pivot painter and to explain what pivot painter is I got these these gifs from high-seat thank you to him you can follow him on Twitter on deep space banana which just shows what it is so essentially what you're doing is for every single polygon or every single vertex in your mesh you're encoding what the pivot point has to be in world space right so for example if you have a plant or a tree instead of just exporting out the tree as a whole or separating everything like you know an unique mesh for branch or per leaf and so forth you can actually just export one tree where every single photo X knows where its sub object has its pivot located so for a branch for example every single vertex inside of a branch knows where its pivot has to be meaning you can rotate or modify or anything else you want to do in shader to make it look organic or create a really cool sci-fi looking effect you see here and all you really need to do in Houdini is heavier geometry create something called a name attribute have some pivot points and you'll automatically encode all of that information into the geometry which then means that instead of unreal inside of the material editor you can grab that data using the pivot panes or nodes and tell it for every single photo text give me the x-axis the you know the direction is facing or the pivot point location meaning that you know you can rotate or do anything else like you see here by just modifying a world position offset so really lightweight cool shader trick which is pretty old so what do we use it for on the project well we use it for all the foliage initially so we can see here that you know we built a tool for quick slit automatically figures out where the pivot points are for every single strand of grass or a leaf of a plant and then you know be able to mask it's the motion master we could very easily control which parts of the mesh tip we want to have you know lots of motion and which part of the mesh did we not have a lot motion so that's the the black-and-white color you see here on the dimension when I'm playing with these sliders so as you can see it is this the core of the planet is really dark you don't expect any movement happening there from wind but the outsides or the parts lying on the floor you might not want to have wind or you might want to have wind so this what you see here is you know initial test that I did for them before handing it over to them and then once you hand over a tool that works for you you know artist comes back and says hey it doesn't work for me which is you know what produce these this weird-looking but funny looking effects so something went wrong there we did debugging lots of back and forth forget the tool working here we have an even more aggressive version of that we're standing the end you know resulted in something that looked closer and closer to what they wanted and here we see a shot closer to you know the deadline this shot is actually not a shot used in a final cinematic I picked this shot because it has more of the garage shown in the end the final shot maybe has you know one or two blades of grass moving might not seem important but it's still an important part it makes a scene look a lot more natural and alive right next up is the mega structure detailing so at the mega structure you know it's a really really big piece of the project for the quick soul project because it simply has so much detail packed into it and it's such an important piece in the the final shot of the cinematic so the artist who's Victoire from quick soul is in charge of both building this mega structure and art directing it and he told us that you know this would take a really really long time to build this which meant that it would take a large chunk of his time on the project meaning he would spend less time on other shots which is of course something you don't want you want to have as much time as possible on every single shot to get a really high quality looking cinematic so instead of building all of this by hand we decided to give a give Houdini a try on on building this cool tool that would give you the scribble to prevent any labor-intensive work from happen for the artists we didn't actually initially start with building a scribble or this psychic paneling in Houdini so what you see here is what Victor already made before we you know built his tool for Bedini and he said you know it just takes way too long and country you know develop a tool that you know does the rest of the paneling for all these all of these other grids which you know would take a really long time so we said yes we can do that we'll work on a tool so what we started out with is just using the default noise algorithms we haven't really need I think this noise algorithm is called a chebyshev I'll probably be corrected afterwards but it you know gave us something that looked like this but Viktor stepped in and said you know that's not what I'm looking for this is not the thing that I want I would like it to be more like this I like this these parts of what you've create so far I don't quite like this can you try and do this instead which was really helpful for us because that allowed us to really iterate upon the tool that built this giving us something that looked exactly the way Victor wanted in the end so how did it work instead of using noises we decided to just build a solution from scratch which is something we call a lot subdivision which essentially is just taking the the main primitive that you have right the big panel which hasn't been cut up yet and you just cut it through the middle straight through the middle on its longest side so if you have a long thin piece you would cut it into two you know less long pieces or change where you want to cut it to create some variation right to give you a variation of thicker and thinner pieces inside of those polygons and then you reiterate that process for every single piece that you cut so imagine cutting a piece of paper into two and then cutting the pieces of paper in two again and then in two again and two again so expand exponentially grows with the number of pieces giving you lots and lots of tiny small pieces which is not what we wanted so after you've cut them down into small tiny pieces we just did like a loop over all of these and clusters them together based on lots of metrics like position and connectivity and so forth giving you these nice irregular sci-fi looking panels it's great for doing sci-fi kind of things but it's actually also really useful for City generation where you know this could be the building profile for a building really great starting point this tool is not you know hidden we've actually published this tool for free so you can grab it from the game development toolset inside of agini it is called lot subdivision it you know might look a bit different from what is here because it's an earlier stage but the final thing works really great so yeah we took the tool that we made on the previous slide and we applied that to the actual building which gave us you know this dispersion here which was sent to Victor and he said you know now's the time to actually start playing around with it so you get that and here we see you know a comparison between the the thing that Victor made by hand and the parts that we created using the genie so you might spot some differences there for example one of which is you know this guy here has all sorts of pipes in-between and this is just black we did not build that yet right so we're just focusing on the panels for now so this tool or wood flow is a really good example of how you can take something that an artist has made you know they've crossed at a certain style or a certain look and then you convert it into a more procedural solution meaning that you can now take that handcrafted look and apply that to a larger set of data so instead of you know having one piece of hard handcrafted piece we can now create hundreds of thousands of these handcrafted pieces using Houdini and then since it's all procedurally driven using parameters you have something called a seed and the seed is literally just a value that you can play around with you can change it to you know 2 or 2 5 or 5 million and every time you change that number it gives you a different variation so by just you know playing around with a slider you can actually already create hundreds or thousands of these variations and then hand pick the one that you like most and just say this is the one I'm going to go with meaning that you as an artist using Houdini you're not really building these kind of things anymore becoming more of an art director telling Houdini I like this I don't like that change this change that you know can we do this instead that's what the artists role is becoming instead of Houdini or inside of unreal if you use Houdini engine right so Victor took the tool and then he started playing around with it and he sent his screenshot to us where he said you know I'm happy with with this output that the tool gave us so once you have a happy artist with a tool quality will automatically follow so to show you the process that you know it would take to build these kind of panels we just made this quick video so first you import your your mesh into Houdini from unreal you then isolate a section so let's say we want to do that particular panel you plug it into the tool and then you can play with these parameters for example I want to have you know a rotation in this angle or in that angle you can specify how thick you want the borders to be between the panel's giving you you know more or less sci-fi look the overall seed giving you variations thickness of it and also controlling you know procedurally phottix colors if phottix columns were basically used for creating variations of materials instead of unreal meaning that you know if photos color had a red it would use this texture if it had green if we use this texture and so forth I mean that we didn't have to export out you know unique mesh per object or with multiple materials loss we could just use the first colors to to create variations with it so the tool you see here again this tool is called soft sci-fi panel it's basically just a wrapper around the thing we saw before the last subdivision giving you know exposing all of the extra things that Victor needed to do this right so the vertex colors and some other things that you've noticed here that weren't part of the last subdivision so you can get this for free play with it create cool stuff let us and quicks all know that you like it or don't like it or any request you have and then yeah you can see here inside of the project that you know we can create light variations between between them so for example you know slightly offset the roughness or anything else like that just to make it clean nicely with the lighting and then here we have that inside of inside the editor in unreal and then the final rendered shot so as you can see lots and lots and lots of paneling here on this shot just as one shot or all the shots of course right it's sort of taking a really really long time to do manually which now you know we were just able to do procedurally so those were all the big kind of things that we did for the project that were used in the project now I'm going to show you a couple of experiments or we consider them experiments we planned out for those things to be used in the shots but they might have ended up you know not being used because we couldn't quite figure it out or because shots that we're using them got cops and so forth so even though they're not used are still very very valuable learning experiences or tools that you know we've still published which you can use in other projects because that's another great thing about Houdini you can take any you know pipeline or workflow that you've used for one project in unreal for example you can grab that tool that you built and just use it in another project it's not you know it's not locked down it's procedural you can always go back and modify the things that you you've built right so one of which is it's sort of piping or grebe link that I showed you so remember when I showed you to comparison between one of the the shots where it was handcrafted that had Griebel and pipes in them and the right one had just you know black squares behind them so we try and also automate that process of generating that Gribble which seemed pretty straightforward but very quickly we ended up with you know sort of pathfinding algorithm that would avoid obstacles that the artist had place giving this sort of pipes but we showed that to to Victor and the artist and they said I don't think we need a procedural tool to do this because I already made the Gribble right I already made these sort of presets or kits that I can get Bosch together so I can just take those and put them behind the things that we made so what we learned from this is not everything needs to be procedural right this tool for example it didn't have as many use cases as for pull the paneling write the paddling would have been hundreds of thousands of pieces you'd have to do manually even though this was maybe you know only 10 or 15 so that's a trade-off you have to find between when am I going to build a procedural solution for this and when am I going to just do it manually so here we see you know these these pipes and this Griebel that you know Victor already modeled we could just take those cut them out and you know put them behind the Houdini panels and it would just give you the same thing so as you can see here we have you know a dozen panels that I've been cut up but only you know three or four of these grayble patterns so this is not as it's not as important that this procedural at this part saves us a lot of time another cool thing that we did is a try and reverse engineer mudslides or of the sliding of rocks over a terrain so initially we had quite a few shrubs actually in the cinematic plan where lots of these kind of rocks in this case it's just roughly you know represented with these spheres scattered on terrain that we wanted to look embedded in the terrain you know give them sort of like a back story how did this rock get here why is it exactly there and so forth so what we wanted to do is try and reverse engineer the history of a rock so rocks don't just you know magically spawn somewhere they start up at a hill for example right and then they slide down and it gives you these sort of paths that they carve in where you know you would have more moss crawling or you would have more debris or you know it would look deeper different sort of height there so what we try to and do is just generate this automatically so how did that work we just started with these initial wide positions and then inside of a solver in Houdini we just basically did a simulation that for every single step we generated these flow lines which is something I've showed before and calculated the slope at that particular position of the rock at that point and then figured out what is the best path upwards of the hill right so instead of it just doing a physics simulations rolling down for every single step which is calculated or engineered away for the rock to crawl up which gives us the sort of you know pipes or worms or snakes or whatever you want to call it that we can then use as you know sort of way to stamp it into the landscape giving us what we want so these are the the main experiments and then cool things that I wanted to show you so we've seen you know lots of Houdini use here which you can also use inside of Unreal Engine directly right so you don't need as an artist at least you don't directly need to work in patina you can have something authored in Houdini for example the sci-fi paneling tool that we saw or you know erosion or something else like that and you can give that to a person who's just working inside of unreal and the editor who is using something called Houdini engine so Houdini engine takes to these digital assets these tools and allows you in real time during editor time right so not doing a run time during editor time to play with these parameters giving you the exact same controls you have in Houdini with some limitations like for example painting and so forth but there are ways to mitigate that so Houdini offer a tool once and in Houdini engine deploy many so for example you can have one artist who is or artist or technical director or whoever else wants to use Houdini build these procedural solutions he makes these tools he creates you know this parameter interface he saw with all these sliders that the artist can play with stores that file and import it into unreal and then all the users inside of unreal they can take this and just utilize it as much as they want so once again author ones deploy many so here's a here's a video of that working so he's a cool example courtesy of Magnus Larsen so shout out to him he basically just created a tool that would import the sort of concrete pillars it could you know place a sphere that would cut out or break loose you know concrete pieces and then he had another tool that would automatically generate change hanging between them so as you can see this is a really powerful tool which no doesn't really take long to build where you can just you know place these pillars and you would automatically create these IV change generated between them and as soon as you move any of these pillars the change would automatically recoup and reiterate thing you've made updating it to the final look so what can you do with routing the engine and what are the limitations so four outputs autumn displays video so four outputs Houdini energy can output procedural geometry so static meshes you can also export out in sensor so innocent static meshes or hierarchical instant static meshes or overrides for access and geometry it connects put out landscapes so you can actually have the native Unreal Engine landscape be written by Houdini engine or modified by Houdini engine even it can also generate collision so you know if you have this concrete pillar we see here it could automatically generate collision around it so that you know you don't just have render geometry but you also have collision geometry so that you know if a player walks into it they wouldn't just walk through it they would just walk up against it and like you'd expect from a pillow like this it can also automatically generate LEDs which means that you know you can have a fully functional asset smart asset essentially right be generated instead of unreal which you've built in Guinea as for input meshes you can input meshes or skeletal meshes since recently from the content browser you can also do it from actors that are instantiated in the world already so in this video you see here he just fed this already existing pillar or cube or whatever else it started with and as soon as he moved it you know hooting engine would know something has changed I need to recoup this thing giving him this updated look you can also use a spline components so for example if you're building let's say a race racetrack a game inside of unreal you could have that be driven by a spline right away you just place a spline and then putting the engine inside of unreal will automatically generate the roads and all the defense's around it and even people if you want to like you saw in a video at the beginner beginning and you can of course also input landscapes and landscape layers so the example that we showed before where we had a rock assembly the inputs into the landscape to embed it that is also something you can input right so here's my land Cape putting engine or bikini please modify it and give me an updated look that's freaking engine so Edina engine what does it offer artists so with artists you can very quickly rebuild things that you've made right recoup things changes parameters you have a Houdini debugger so if something doesn't quite work or you want to see how this thing works or why it isn't working you can just open up adeney as a live session and you can see how Houdini and Unreal Engine work together you can pause cooking continue cooking so it doesn't you know freeze your editor while you're processing you know an entire scene at once or an entire game at once if you wanted to it gives you a tool shelf so if you build any tools using Houdini yourself you can just grab those tools and put them on the shelf so that artists can just drag and drop those into the scene just like you could with for example a light actor right if you want to light you just drag in a light if you want a fence generator from Houdini you can just drag in a fence generator from Houdini and it actually also ships with a couple of out-of-the-box tools like scanner tools flying tools and a couple of other really convenient ones it's also really flexible so as soon as you've made your procedural asset you can also say you know bake it down to a native Unreal Engine static mesh or even modify any of the you properties so if for example by default you always want to have the static mesh not simulate physics there's like a checkbox instead of static mesh editor Tom Houdini you know tick that box or on ticket it can do that for you but it can of course also automatically drive things like material instances so for example you know set the reference to this or assignees textures or change this change that that's all stuff you can do so what does it have for developers or engineers Rodina engine is really accessible the entire plugin is actually open source it's on github meaning it has a high level of customizability anyone can go in that you know know C++ and modify how something works for example if they have a custom build of unreal or they want to add additional features they can just do that themselves if they want to do them do so Marine Engine is multi-platform so we support Windows Mac and Linux and we update these daily releases so Houdini has a daily release cycle so that as soon as you know we fix something or we add something or user has a request most of the time you have that your next date you don't need to wait until you know side effects says here's the new version or d'ya know you can actually get that the next day or you can actually get it the minute as soon as it's submitted on github right super convenient super easy and then we actually have an announcement to make regarding hooding engine we're announcing version 2 of the plug-in which is a complete rewrite on the core architecture of the plugin because a lot of people don't actually know this but Houdini engine was built on Unreal Engine 4.5 right so that's a really really long time ago the actual details on the the things that change or added you can find that here on on this link if you go there but I just highlighted a couple of them I think people are gonna be really excited about so there we go really excited we will have blueprint support something that people have asked a lot for so what you'll be able to do is for example have a blueprint actor and have that have a Houdini digital asset component to it which means that through blueprint you can actually drive presets parameters and anything else through construction script or brutality we will have a PG asset link PGG asset link is something that we'll be able to manage complex dependencies and allow you to distribute async cooking so instead of if for example you have an entire massive landscape and you you know you have everything be procedural or only parts of it let's see you generate a procedural landscape right then on top of that you have a procedural Road on top of that you have you know procedural foliage around the road and on top of that have all the things as soon as you know for example you move the road a tiny little bit Houdini wouldn't really know what the connection is between the road and the landscape unless you've explicitly told it if I change this modify that well with the PDG asset link it is going to be able to know if I move the road in this region of my landscape I don't need to regenerate the entire level I only need to regenerate this particular region around the part that I modified and it doesn't really need to do that on your local machine you're working so let's say you're working on a network right which has a computer farm or a computer farm somewhere else in your building or outside you know Amazon AWS or something like that you can actually have Houdini engine cook everything on a remote server right which means that is a sink allowing you to keep working in the editor while in the background Houdini is cooking and as soon as it's done it will automatically import everything making it really easy for you to to keep tweaking things will also make lots of changes improvements on the UI and UX based on the user feedback that we've received so since everything was built with Unreal Engine or was built in Unreal Engine 4.5 lots of it isn't really native UI code that unreal has you know its current releases so we're rewriting that giving us a more improved parameter a UI we'll be able to have default values something very important that we're going to support and you'll be able to do expressions and create expressions in parameters as well another thing that people have really been asking for is the ability to have Houdini engine be level independent so what we're going to do instead of having a Houdini actor in every single scene will actually extract that and only have the HT a component inside of your editor just have data right so the parameters that you saw on the digital asset and all the cooking all the processing all the geometry all the data happens externally meaning that you can have in the engine tell it you know generate the tree in that level generate a tree in that level generated tree in that level instead of you know generating a new tree in this level going to a different level January 3 there and we were able to do that with world composition meaning that you know you can basically generate an infinitely large game with routing engine and unreal through a world composition another thing that a lot of people have mentioned is that the mesh creation currently with routing engine you know has a little bit of a delay and so what we've done is instead of going through the default static mesh generation which is a slow process because once again it's optimized it's a static mesh it's not meant to be modified we're going to be looking at the editable mesh component which like the name says is editable meaning that you'll have a really really fast update rate so as soon as you change a slider you will have the result almost immediately or even immediately depending on what you're doing so that's something that people have asked for a lot and yes we are working on that and you will get that and the timeline for this plug-in we don't have a date to tell you yet but I can tell you that this will be you know somewhere expect something around the end of the year so that's announcing v2 we're actually also looking for an Unreal Engine developer which can help us build you know this new version of putting engine so if you're an engineer and you have you know C++ experience in Unreal you don't necessarily need to know Houdini that's just a plus that you could have if you know unreal and your developer contact us go to side effects outcome slash careers find the application that says Unreal Engine for developer and you know apply and we'll be happy to listen to you so all this cool stuff that we've shown you today I'm sure that lots of people who haven't used it in yet are like Houdini is probably expensive and so forth you can actually go on online to side effects comm slash download and you can download a free version off Rajini called the apprentice version which is a completely free license which you'll get as soon as you install it allowing you to essentially rebuild anything you want there are no limitations inside of Houdini limiting you from doing anything you can render you do simulations you can do lots of other stuff the only thing that we really limit you with is you know file format you can export with for example you can't export FBX you can only render to a certain resolution but it doesn't really matter because it's really meant for learning purposes later on when you feel more comfortable you can look at other types of licenses and that's really all the things that I am I have to mention one other thing Houdini apprentice cannot be used with putting the engine inside of unreal but if you want to do that side effects is always sponsoring the Unreal Engine game jams which is when you'll be able to get a free two month Houdini in the license and that does allow you to use it in the engine instead of unreal so you know you use the apprentice version to learn Houdini and then once you participate on a game jam feel free to reach out to us and we'll give you a free putting indeed license for an evaluation time for the game jam and that's all I really have to say today
Info
Channel: Houdini
Views: 9,950
Rating: 4.9870548 out of 5
Keywords: houdini, UE4, unreal engine, unreal, engine, unreal engine 4, game engine, Rebirth, Quixel, Megascans, GDC, game developers conference, Epic, Epic Games, gamedev, game dev, game development, game art, game, games, art, tech art, tech, technical art, techart, game tools, tools, animation, VFX, world, world building, worldbuilding, SideFX, sidefx houdini, environment art, environment, quixel megascans
Id: OKm8MaKf9pU
Channel Id: undefined
Length: 62min 49sec (3769 seconds)
Published: Tue Jul 23 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.