ZBrush Overview: ZBrush for Game Art

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
this is me i'm a film motif i teach at escape studios as program leader for the games art course i've been working in video games for around 15 years now maybe i think i started in 2006 so on runescape many years ago when it was known as old school runescape i suppose and um from there moving on to um climax to work on silent hill uh chat memories that was really good fun and the overlord projects as well that was really cool and after that moved on to ea to do some of the later harry potter games and then was working at rebellion on some other games that you probably wouldn't have heard of things like never dead and um and a few mobile games and things so i've seen quite a wide spectrum of video game art over the years starting at the very very simple with runescape which was almost uh i think it was the first of its kind really an mmo that was entirely online that didn't require a cd so super super optimized to working on quite high-end games with uh that later on in my career so and obviously now i've been teaching for the last um seven years now i think four years at escape and so and that's me and i i do teach quite a lot of them zbrush throughout the year as well as um that's kind of my specialism even though my background is a lot more in low poly workers you would see from things like runescape and some of the mobile games that i've worked on so today uh topic which is um zbrush for gamer uh sounds quite exciting and it should be exciting but it's not going to be a talk about how to work within zbrush i guess it's not going to be like how to make a dragon skull or anything like that it's much more about the pipelines the how you get your your zbrush model once you've made your lovely detailed sculpt and get that into a video game engine so it can be part of a game and not completely the frame rate of your of your project so ways of kind of optimizing your models and um still and creating textures that are going to go on to your um your high poly models and then be able to optimize them enough to be able to get them to run um within a game engine and so when i originally planned to do this um this webinar talk it was before the kind of the announcement of nanai i don't know how many of you would have heard of nanite before but that's a kind of a new fun a new addition to unreal engine it's really really new actually it's in b2 at the moment and it's just um it allows you to kind of import uh millions of polygons which um uh will make sense as i go through this talk but i really really kind of dense high resolution meshes and be able to get them inside of unreal which kind of changes a lot of the way that we we might essentially work with zbrush uh when working in uh in unreal and i'm going to talk about that a little bit throughout the talk as well as what would be more of a standard workflow of what is commonly used at the moment for video games which is generally to optimize things down um to a to a light file size and get them to run well in frame unless i'm going to be covering quite a few different softwares and a few different topics throughout so i really encourage you guys to ask questions throughout and i will have plenty of opportunities to pause and answer questions as some of the processes we do can be quite time consuming when you start managing millions and millions of polygons some of the things that we do we'll have some good pause moments so there'll be plenty of opportunities for me to answer questions throughout or anything that you are unsure of or maybe you came to this talk with a specific kind of question in mind about zbrush and workflows and i'm more than happy to answer any of those questions as well as we go through cool so without any further ado let's get started so zbrush what is zbrush it's a digital sculpting software used to create high resolution models and textures it uses its own pixel technology which is its own kind of algorithm for managing things like a lighting color materials orientation and depth information for points that make up your object so maybe if you're used to working with things like blender or maya or any other 3d applications you're very used to working with polygons and vertices and triangles whereas zbrush uses its own pixel technology which enables it to handle a lot more geometry than um what you would inside of maya so i could use 50 60 million active points of which they're called inside of the zbrush and it's not gonna it's not going to worry about it too much but if you would put that into blender or maya you would have a have a pretty bad time is this webinar gonna be available later to us that is a good question and one that i have no idea about i think so i believe that we release these on the escape channel um but the first question i already can't answer so that's not a great start but um i don't entirely know hopefully i think they do i'm pretty sure that they do go out on our youtube channel uh shortly after after the actual talks um but yes cool so moving along let me get my smiles moving um so what the topics we're going to cover today so the topics are going to start with retopology so what is re topology the process of simplifying the topology of a mesh to make it cleaner and easier to work with so if you don't understand what the topology of a mesh is let me open up a wee web browser we'll do some google searching whilst i'm talking as well so topology just to find some nice examples of topology maybe add a 3d on there just to make sure we're getting the right stuff um so generally it's the edge flow of a model so what is good and bad topologies it's quite a nice image that shows that off bad topology tends to look like lots of triangles and weird shapes running through it anything with more than four sides to a polygon would be considered bad topology uh whereas good topology has got nice flowing uh edges it's all kind of moving in the shapes of the object so you've got good circles around the mouth and around the eyes and you've got the geometry where you want it because you know that certain things are going to deform so the eyes are going to blink so you want lots of points there so you can have good deformation of the eyes whereas the forehead isn't really going to do much throughout so it can be quite simple so you tend to put the geometry where you want it and but you keep it clean and even for lots of reasons really which i'll talk about throughout today why good topologies really really useful uh uv mapping being a good example of why good topology is good because to uv map something let's let's keep the uh the google searches go and share uv mapping just for those that might be very new to 3d um so a uv map is essentially when you've got your 3d model you need a 2d version of which you can then paint on and that's essentially mapped around the character so if you think of this quite a nice example of a map being wrapped around the globe it's uh you can be flat while you draw your map and then you wrap it around your object and so and these things can get quite complex when there's lots of parts to an object like this mech for example that's got three sets of different uvs but you can almost start to see some of the shapes in there you've got kind of the body of it here and there's some of the wheels and things but essentially it's just a 2d representation of your 3d model allowing me to draw here and see it appear over here and that's going to be similar on all these examples and i'm going to go through more examples as we go through but uh essentially that would be part of your workflow you'd be re-topologizing uv mapping um and then we'd have a look at things like id maps what is an id map an id map essentially uh you can use color selections to be able to assign different materials to parts of your model so what we would do in zbrush is we would if we had something like this gun you could color in let's say the leather bits the metal bits and whatever other parts of it and then you can very quickly make these selections when you're doing your texturing so if i wanted all of that yellow bit to be leather i could do that very simply inside of substance painter but as long as i define these things before i export them i can very quickly go in and assign the right material to the right sections and this can get quite fiddly when you start managing things like buttons on jackets and things like that where it can be much easier just to make sure you've got a good color selection beforehand and then you can very quickly sort of add your materials on top of that and i'll be doing a demonstration of how these things work uh during the session uh next thing we'll be looking at is texture baking so skip a slide uh texture baking which would be uh to get your high poly model so we're gonna go into zbrush and make a a very high poly model which will be in the millions and then we need to be able to transfer that that very dense mesh into a texture that we can then um assign to our model uh which again it's going to make sense as we look at it but what you have is a is a high poly model a million polygon model and then you have like a 1000 polygon model and you have the uvs for that low poly model and then you can just transfer the detail as a texture onto that low poly model once it's uv mapped and we'll be going over how that process works as well during this session we'll have a quick look at pbr workflows so physical based rendering which is kind of a new algorithm new algorithm it's been around for a few years now and essentially it just um more accurately recreates how lighting interacts with materials so we have a slightly different material set up um where you can get light to reflect properly off of objects so we can fix what is metal and what isn't metal and we have um a kind of a scanned library of um of these things that kind of already worked out for us so what is the exact kind of color of gold for example that's been scanned and we can pull that information and put it down and we can work out what is the exact reflection uh values that you get from something like gold and then we can assign that to our model and have it behave exactly as it would in the real world the way it interacts with the lighting and this is this is really cool because previously when i was working on older games you would have to manually kind of paint the specular highlights you get when lighting kind of bounces off of an object and then if you were to change the time of day of your game you would then have to retexture every asset to reflect this new light direction but now using pbr methods uh we can move lighting around all over the place and models are going to behave accurately uh to how we've kind of adjusted things and so that that's really cool uh nanite which is not something i want to go into into extreme depth as it is super new it's only been around for a couple of months and uh it's really exciting what you can do with it because obviously you're you're then able to get from zbrush these million poly models and get them straight into a game engine without kind of crippling performance it will run quite happily with a trillion polygons inside of them inside of unreal i mean it does come with some caveats which are going to talk about some of the things you have to think about if you're going to be using that kind of approach but really exciting really interesting um stuff that's coming out and i'll put some links on the end as well of things that are worth reading up on because this is going to be a big thing in the future of game development and the way that we kind of work with engines really really cool nice so that's the kind of things we're going to be covering for the for the next hour um these are some of the models uh that i was the part of the scene that i've been working on with um with one of my colleagues that i work with jordan who who did a talk earlier about materials he might very well have shown um some of this scene as well it's just something that we when we're teaching in the classroom we try and do the the projects the students are doing at the same time so we were doing a demon souls dlc map so the students were making a map for for demon souls and then we made a little room as well for demon souls at the same time and so these were some of the assets that we were we're building i thought they'd make some nice examples of um um yeah using zbrush for for game art but essentially what i'm talking about so let me actually move zbrush into the screen so we can we can see the interface i'm not sure how many of you have ever turned on zbrush let me just check the questions quickly is nano a technology used in the unreal or in zbrush so num night is a technology that's used inside of unreal and it's just able to manage the volume of geometry that we use inside of zbrush so for example if i have a sphere i'll just check on the screen quickly we could pretty much freely you can see at the top it's a 8 000 active points by default um poly count is yeah again 8 000 but if i press ctrl d a bunch of times you'll see that this poly count is going up i'm at 520 000 now 2 million 8 million and i'll do it again one more time you really don't want any single asset going much higher than 33 million because that's that's a really dense mesh and zbrush is one of the only softwares that can actually handle having this much geometry on the scene at any one time up until nanite came out inside of unreal where i could export this straight into unreal and it would handle it uh quite happily as long as i import it as a nylonic mesh and so what nanite is is essentially the inside of unreal but a new algorithm for for managing uh high poly models mostly kind of designed around the idea of using scanned data so things like um photogrammetry where you can go out and scan entire environments you come back with very dense meshes and those can be loaded straight into into an engine um but yeah so and what would be the difference between having this 33 million polygon model versus um my first one which was 8 000 if i was to draw on this or to do any sculpting on it you can see i can i can make a shape but it's a little bit low poly it's a little bit noisy it wouldn't look great as a texture or inside of an engine you really want those extra levels of um extra divisions to get it to be nice and smooth if i drag that right up it's gonna go super high poly up to my 33 million but this would allow me to do things like um skin pores on on a face or like really really kind of fine detail lines if i wanted to be able to so you and another bit of advice when working with z5 you should never use a mouse i do have a tablet around it somewhere but it is a bit like drawing with a with a deck of cards um but yes for doing very fine detail stuff you can do that at a really really high poly count but uh yeah not great for inside of a game engine and so to see this as an example again let me um grab a plane uh out of here so like i said this isn't a throne introduction to zbrush there's lots and lots of videos out there when introductions to zbrush and it's something that i teach quite a lot but that would probably dominate the hour session and uh really rather focus on on the the exporting a bit into a game engine which uh which i'll go through but if i turn off my smooth divisions make that polymesh3d and pressing ctrl d which adds my subdivisions i'll get that up to 16 million and what i'll do is i'll load in a height map which was one of the textures from from the level which is this one a trim sheet and what i can do with this this is essentially just a black and white image um black representing down white representing up and grays are the gradients in between and i can go down to my masking options and then just go to mask by alpha and that will essentially draw that as a mask over the top of my of my cube because it's just a square being mapped to a square uh i think it's is it inverted i don't know that's fine for the example i'm just going to press w to move it and i'll move it out a little bit and you'll kind of see what you end up with so because it's a mega high poly i can have really nice kind of details on there and the height information the back of my information is kind of what you get from using height maps and this is generally how lots of detail is kind of added within video games we tend to use zeros and ones and black and whites to be able to fake kind of depth on objects whereas if i was able to export 16 million polys into my um into my game engine i could start to kind of go around the corners and i could remodel these blocks as actual blocks and replace them and be able to get a lot more detail into here and a lot more variation um rather than just using the up and down values not that that's a big deal so i was dragging across there but to show you what i mean in terms of what you get from your polycounts now if i go back to my geometry and drag it down one division level that's at four million and that still looks pretty good at four million actually it's fine that's very acceptable i think if i saw that inside of a video game i think yeah that's a that's a very detailed asset um at 1 million still not really seeing much degrading of the quality the difference between 16 million and 1 million isn't going to be massive on an object this size once i start getting down to five you start to see the quality starts to drop a little bit and places start to get a bit more pixelated four three one and by the time you're down here it's almost not recognizable as uh as what it was originally so showing you the real value of being able to have a million polygons versus a very low poly model which is generally what you end up with in game something like this but you use the texture information to be able to fake um the actual fine detail we've never really been able to import things like this into a game not up until uh nanite was a thing and now it allows you to kind of export this and i could export this straight into a game engine and duplicate it about and make it and make a pattern um which would be really cool nice so that as an example um and let me open up the model that we'll be working with which i'll be working with today i'm just going to load in the door uh not a traditional zbrush scott i mean generally when you're looking at work inside of zbrush a lot of the time it's going to be characters because it's generally used a lot inside of um creating high resolution characters dragons and things i'm sure if i even do a quick google search on zbrush i will be presented with pages of characters and this is generally what what it gets used for doing really high resolution uh character models uh you do see it used in games uh for stylized things as well which can be really cool and you do get um environments as well like doing doors and things like that and i guess it becomes about what you're more comfortable with and you can do some quite complex hard surface things inside of zbrush these days and uh and yeah it's really really powerful for doing both all sorts of modeling you can even do cloth inside of zbrush now for doing deforming cloth and things like that doing things like hair this kind of thing very difficult to get into a video game because it because it is a very dense mesh and might not behave quite as well but generally a lot of the time when using zbrush it would be with with characters in mind but on this occasion we're going to look at a door that i was making for for the scene so this door at the moment is 29 million active points which transfers as 54 million polygons so 54 million polygons which would be difficult to work with inside of a game engine you can when i press on this uh polyline fill it kind of shows you the edge flow of the thing uh and you can start to see how dense the the meshes are and this is all the kind of points that are making up the shapes that we see on the um on the final model and so what i need to do is look at how i can kind of get this really nice detail but inside of inside of my video game and with a texture on it as well as um although we can do some texturing inside of zbrush in terms of adding color and things like that i tend to do a lot more of it inside of substance painter which is set up for pbr workflow so we're being able to to add uh those material types rather than being able to either just paint flat colors onto the object which is fine if you're doing i don't know something stylized maybe i can quickly look at a stylized zbrush thing uh sorry one second it's that time of day when my children start to work their way into my room so i'm just a victim the victim one i feel there won't be too much of abstraction going forward uh but yes uh i don't know it's totally made me lost my train of thought oh yeah i was saying about stylized things and how you could potentially texture paint themselves if i stylized we can have a quick look at the kind of thing that gets done and spelt slightly wrong but this kind of coloring in is very possible inside of um inside of zbrush as it's it's quite simple colors you can project through textures as well so there are a few different ways of kind of texturing inside of zbrush but we'll we'll look at that later on the most the thing i want to want to talk about today is kind of how we we kind of use it for doing a pbr workflow so how i could get this 54 million polygon model into um into unreal so if i revert back to my slides [Music] so the first thing we probably want to do is to look at how we can get it into another program in order to retopologize it so there's a few different ways of doing retopology inside of zbrush and that would be a decimation which essentially would crunch the poly count right down and try and maintain as much of the detail on the surface as it can and then i would move on to um quad draw which is a much cleaner way of doing a retopology because you can lay the polygons out manually and really be able to put these um where you wanted them uh let me just pause whether there's a question are these uh functionalities you are going to explain available in zbrushcore mini version yes exactly what i'm looking at um will be at you can do in whichever version of zbrush as for most of this session i won't be looking at zbrush specifically as more it's transferred into a game engine i'm not entirely sure if the core version has zero measure which is something i was going to talk about and it essentially is another way of redrawing edge flow and it does quite a nice clean job i'm not sure if that's inside of the in the core mini but it was only something i was going to touch on and it's not really unnecessary it's just quite nice to know about as it's a kind of a clean way of redrawing your edge flow um but to start with i'll look at um decimation because estimation master which is a generally a nice way of being able to get your model down because what you want to do first before doing any decimation is exporting your model out so you can bake it later on so i would have to export all of this out as individual meshes because if i look at my subtools what you'll see is that this model is made up of lots of different parts things like the handle is its own separate thing and that's four million polygons on its own it's just quite nice the duffed up handle um this kind of thing the hinges on the side and there's a few different elements that kind of make up the model and i will need a few of them but some of them i can get away with just kind of baking directly onto and so i'm not gonna go through and export all of these individually as it would be very boring for you guys to watch as it's a it's quite a slow process so i have exported them all before the um the session started and i just went through and exported all of these individual meshes the name's quite important as well i don't want one at the end but um when you're working in a baking program like substance painter it it kind of looks for the names and it will bake one to the other based on those names so as long as it finishes underscore high and then the low poly version finishes underscore low it'll know which one to draw onto which so that's quite important and i'll show that as an example as we as we go through um but we want the same amount of low poly pieces as we do high poly pieces and there's good reasons why you'd want to separate it rather than than having it as one big object firstly i don't even think i could export 56 million out of zbrush in the first place is that i tend to go to about 20 million and then things aren't going to export particularly well and i was also talking earlier a little bit about id maps and the idea of using id maps so if i turn on these little paint brushes what you'll see is i've colored pretty much everything in some things aren't colored in but the majority of things are and there'll be reasons why i'll be able to get away with not coloring those in but uh essentially just to add these colors is quite straightforward if i select my door handle and i can just go to a color and grab any other color and just fill the object it'll put color on the actual vertices and this was for the reason i was explaining earlier which i'll revert back to my slides as we get to id maps around here um where i'm able to kind of make these selections and then assign materials based on each of these selections um and yeah i will bake an asset and we'll have a look at how that works but know that by adding these different vertex colors inside of um zbrush just means that i can quickly select that handle and go okay i want that to be metal and i want this bit to be wood and i want these screw heads to be metal and vice versa and then i can just select them all uh quite differently nice so like i said uh the thing you do next is go through and export all of these if i look uh on my desktop i think i made a little folder webinar folder i have a door hi folder and in here i've got my door handle high so i exported that underscore high my door handle mount my hinge high and the panels and all the different elements all exported as underscore high and then what i need to do is take this model into um maya so i can do use quad draw so i tend to use contour quite a lot because it like i said earlier it's kind of a manual way of plotting a different edge flow on your model and so i'll show you how that works but first i'm not going to be able to bring a 29 million poly or 54 million poly um model inside of maya so i need to reduce the overall poly count on this model beforehand and the way i can do that is to use uh decimation so decimation master inside of zbrush can be found at the top here under z plug-in i can use these little radial buttons why do you commute so one question i don't really understand why you'd commute texture to color why not just keep it as a texture um well it was never a texture in the first place so i haven't actually got a texture assigned to this it's just got a flat color on there what i need to do is make a texture for it so i'd put the color on first just so i can assign which bits of this model i need to put the texture on if that makes sense so if i have a map that says oh this thing's yellow i can later on go make a wood texture every nice pbr with texture in substance and go put it on the yellow bit and then make a really nice texture uh yeah making my textures inside of substance and assigning them to these different colors on the model so yeah i've never had the texture in the first place i wouldn't be able to kind of keep it but i do need to make the texture and then i'll be able to assign it to those parts nice hopefully that makes sense uh well it certainly will do by the end of uh once i've gone through the year the demonstration i'm pretty sure cool so i've got my uh my model here and that's just the handle on its own and that's at 4.23 million i might have some subdivisions that could make my life a little easier so i'll just drag that down to 713 000 which is fine and then i want to be able to use my decimation master to get that down to something much lower that i can bring into into uh maya so i'll just dock this on the side go to my decimation master which should be around here and the way that decimation master works is you would click on the pre-process current first and what that does is it will go through and it will calculate where all the points are on this um on this handle and then it will allow me just below it to remove it and leave a percentage so i if i was to hit decimate current now i would be leaving twenty percent of my geometry so it's seven hundred thousand actual points um i won't do the math so i'll hit the button it'll leave me a hundred and forty two thousand which is a little bit better uh in terms of what i can export out and quadro over uh again i can hit pre-process current again it should be slightly quicker if you do it a second time and then decimate it down and then that's down at twenty eight thousand um cool that's much easier now i can work with that inside of maya so if i want to do that again with another model like this one over here just go through and i've got this mesh at one point something million uh i can then have a look difficult geometry there now so i just hit pre-process current and it will go through and calculate all of those points for me and these ones have been relatively quick but uh some of these larger ones which are a bit more complex would take a little bit longer to calculate luckily again i've already kind of gone through this process and exported it so i was just going to show you the first two and then i'll show you the reason why i'm doing it um with the existing meshes but there we go and that's reduced it a tad you can see it's it's gotten lower in this poly count by being at 300 000 now and which is better i'd still go a little bit lower just because there's no need for me to have it any higher than that and then decimate current again and then i'm down to 63 000 which is which is fine cool so i have my decimated models and i have my very high res models let's pretend that i've gone through and hit decimation on all of these and that's what you would need to do once you've sculpted your very high poly model you do your id map you'll export them all out individually as high poly things and then you can go through decimate all of your models and then bring that into um into maya generally once i decimated everything i could just merge it all into one model and export that and that's what i'm going to bring in to maya so if i open up maya over here which i have somewhere not saying that mine's the only way to re-topologise your model there's a few other ones that are around like blender has its own root topology stuff some of them are more standalone plugins things like topo gun i think this lots and lots of different um retopology programs it's usually just what you feel more comfortable with or what you've been using the most but yeah lots of different types of polling new poly build at all in blender so there's yeah oh don't let me start in videos but uh but yeah lots lots of different processes but this is the one inside of maya and so i was going to show you how that works uh just so you can get to a lower poly model so understanding what the goal is i guess would be quite important so i'll um i'll just import the decimated model so if i go to my desktop a [Music] decimation destination door destination now so this is that same door but it's at in total 1 uh 17 million one million seven seven hundred thousand so still pretty heavy not something that i could put into a video game and have it run uh at real time uh generally you'll get aiming for something a little bit lower certainly for a door and it's kind of excessive as well for the for the workflow that i'm going to use so something much simpler uh would be better i'll ignore the uvs i don't need any uvs at this point but if i wanted to go through and draw this uh to get to my low poly uh inside of maya you have this function at the top this a little magnet that goes no live surface and it will essentially make the model a live surface which allows me to plot points on top of an existing model and so if i go over to i don't remember toolkit i have this function called quad draw i can also access it up here then i'll scroll down a little bit once i've clicked on it and it has all of its shortcuts and hotkeys all listed down here which is quite useful so you can kind of see all the different functions that it can do when it comes to drawing out polygons oops i'm going to do that we go from zbrush to maya too often there again right and so if i wanted to just quadro on top of this it's essentially just about plotting points so let me go back to my quad drawer i can click here click here click here and here so i need four points to make up a quad then i can hold down shift and just drop in um a quad and this is all kind of snapping to the surface so i can move these points around a little bit and now they'll generally snap to the surface so if i extrude off there and that was just holding down the tab key right off there i can start to kind of rebuild my model but with a much simpler edge flow and i think whenever i'm using things like cod draw i really try and start quite simple because once you get into very very small points it becomes a very time consuming process of moving around quite small bits but it's better to kind of start off with some big big chunks and then work your way down to smaller ones so generally you want to go around and just redraw the model but in a much simpler way and we'll recapture all of this nice detail but within a texture rather than um using the geometry so i could still continue all these parts over here and if i if i do this top part i can show you an example of them of the results that you would get as well just even off just a small piece so with things like this for example you've got a nice pattern but it sits on the surface you can transfer the detail onto a flat surface and then that's much cheaper to look at inside of them so it's a quick question do you have any auto retopology tool or plug-in for maya no i don't even have never heard of such a thing maybe maybe what what kind of things there's a what is that just an optimized mesh it would probably be a bit random in the way that it goes about it uh let me see i'm pretty sure there's a reason to apologize function there's a remesh function and these work pretty similarly to what is dynamesh inside of a z brush which will just give you a big grid of quads rather than actually trying to follow the contours of the mesh using the actual reduction tools tend to make a little bit of a mess there's something that's being developed i think more and more that the idea of automated retopology but unless you're actually looking at a thing it's very difficult for a computer to understand what's important and what isn't and that's kind of where you kind of need that human element for example as i was saying uh when it came to this kind of pattern and design you might start thinking of or go in and quad draw all around this pattern and redraw it all but but you you actually don't need to you can just kind of cover the whole thing with one one big plane and then transfer all of that detail onto a single plane because it will just be texture with normal maps and volume which i'll explain once i actually get to get around to baking but um yeah i only need to capture this this section on a flat plane which is far cheaper than if i was to try and re even if i manually redrew all of that it would still end up at quite a high poly count but i can do a much cleaner version just by manually plotting out these points and really controlling where my edges are going to go okay i could start to go around there but uh right so i can actually import the finished version as well which i might do just so you can see what i'll be aiming for uh which i have my dawn low if i import that and just grab that there it is move it over there oh i think it's trying to snap to my live surface there we go cool so this is what i would essentially go through and draw based on uh using quadro so i better map in the little points that go around here i could probably just do like one and then duplicate it a few times and the same down here i probably just do one and duplicate it over to this side um a little more difficult to read because it's in triangles but that's just through exporting i can turn that back into into quads if i want to mesh quad to actually [Music] see it all more or less as as quads and i've keep i've kept it separate as well so i've separated the pieces based on the high poly pieces that i exported so some of these bits would be would be separate so i didn't actually add that chunk to that chunk i ended up exporting out this bit separately um to the other parts and really important when it comes to doing this process is that they remain in the same 3d space so this object needs to be in exactly the same 3d space as this object if i was to move one um either way i'm not going to be able to transfer this detail onto this object because it works kind of like a sonar from a submarine maybe we're kind of you get array that will bounce off your high poly and then it will hit the low poly and it will transfer the detail that way so if they're not in the same 3d space it's not going to be able to transfer it from here to this object that's over here because it doesn't really know where where it exists so it'd be important for me to leave that being wide at the end at the start of course quadruple a little bit but we'll probably switch it out for our finished version just so we can move along and start looking at that um idea of baking this mesh onto the other one just stop it moving but essentially that would be a good way to go you could just go in and quad draw all of your individual bits and as long as they match the same bits that you exported and you've got a low poly version you're then able to go on and start to do uv mapping which was the next thing once you've actually made that low poly model so there's quite a few steps that come from the point that you finish a really nice looking zbrush sculpt to actually getting that to work inside of a game um and and this would definitely be one of them where you're going in and doing re-topology and sometimes you can get away with quicker methods things like the z-remesher or the decimation or some automated process that you might be able to find um but sometimes it's just easier to go in and do it manually because maybe that's what you've kind of already done a lot already when you already kind of know how long it takes you to quite draw a thing it'll become a bit more of a predictable workflow and you know how long it's going to take me to go in and build things some people won't actually they'll start off with a simple model so they might model this first and then take them into zbrush and then start to sculpt on it but then maintain the original version that they could then transfer back onto but we didn't we're not we're not doing that um i much prefer to work in a high poly first make it make it as cool as i can and then worry about the low poly after as well understand i was gonna move on to talking about uv mapping you can see that i've already uv mapped this which is the process of taking your model and assigning it some 2d space so i don't want my high poly i'll get that out of the way now because i'm kind of done with that uh the next bit would just be like i say making uvs for these sections so you can access your uv editor inside of maya using the uv workspace i quite like because you don't get a floating window if i had no uvs on this which i'll probably just wipe the uvs just to show you how you could start going about uv mapping a thing should not completely trash you start with a basic projection so you get different types of projections for doing uv maps where you can select things and at the top along this line i have a planar projection cylindrical projections and automated projections uh depending on the type of object that you're that you're mapping so the majority of these things i'd probably do with just a flat projection like a plane straight on and just turn it into uvs based on this direction uh whereas you'd end up with something like that so if i select this and just do planar it goes kind of straight on it's not ideal but after that i would just go to to unfold it and then it will relax it out to a good shape so if i shift right mouse unfold and then kind of unfold it in a way that would make a little bit more sense or at least would relax it down to the shape so you see i've got both of them at the same time but that's that's pretty much just unuv wrapped that part of the object for me and same with this one i just grab it do a projection from the from the front do a projection from the front and then it just needs a seam that runs all the way around it so i can then break it up into two pieces uh so if i just double click on an outer edge and then cut it i can then grab them all stop clicking around the place grab them all and then hit unfold again and it will have it in two sections so it should at least be in two sections and that one unfold i think i'm just selecting selecting the wrong object a professional area so i've got this piece and this one again needs an edge cut around it so i just cut there and then i can grab that and unfold it as well cool and then that's kind of unwrapped as well and i can see that using these grids they're kind of showing me what a 2d texture would look like on my 3d object and you can see that if i rotate it around or scale it you can if i get it to be kind of straight on what you're looking for really is squares i haven't really got squares on here they're a little bit stretched so maybe i'd have to add another seam if i was to go around and cut it there ideally when you're putting seams in uvs you want to put them in places where they're a little bit hidden so i'll just cut them and then i can unfold those two bits or even better than that would probably be just to cut it along one of these rows uh maybe in an easily hidden place like that i can cut that and then grab that and unfold that and then you've got kind of a straight version of it which would allow me to to just draw on that and that would be a little easier to work with and you can pack it into a uv space a little easier so again yeah and just cut these things and unfolding them and then eventually be able to find a nice relaxed pose for all of my parts um so let's uh go back to my original model uh just because i would go through and obviously uv map all of those sections but uh it would become the majority of our talk if um if i go through and do that so let's say we've re-topologized our model we've done our uv mapping we want to move on to the next section which would be to make out our textures so texture baking so what we're going to do is we've got our low poly model and we've got our high poly parts that we've exported we now want to be able to transfer that detail onto a texture so you can see in this normal map as all of that interesting detail that i had on the high poly model but as a texture and this is the same for a curvature map which is essentially picking out the edges of my high polynes and that allows me to to do things to the edges of my model like adding edgeware and things like that so it's able to pick out all of these sections sections for me so i'm just going to open up substance pain and hopefully this will all make sense as as um as i break it but what you're seeing is actually quite a long process from getting well it's a long process you get faster and faster at doing it and the simpler objects are obviously a lot quicker if i was doing a rock or a candle or something like that would be quite a quick process whereas the doors relatively relatively complex um so inside of something painter i'm just going to make a new project i'll select the file and what i want is my low poly model so what i did inside of maya is i have my model which i'll import again just so we can see exactly what i did before it got exported i've quad drawn it to get a low poly version i've uv mapped it you'll notice that some of my uvs are sitting outside of this zero to one space so everything generally for a texture would sit inside of here but some things you would put outside if they're repeat if you want the same texture to be drawn twice essentially so i i don't mind if the texture gets drawn once there but it gets drawn again here because all of these squares that you're seeing here are just repeats of whatever's going on in here so you tend to move stacked shells uh one unit to the right and that way uh they don't draw on top of each other so it's a useful thing to bear in mind so all of these meshes they're all named underscore low they've got the same first part of the name as my original model and that way when i come to baking it it's going to know i need to bake the handle to the handle or the door to the door it's actually playing around with the name a little bit but uh that should be fine as long as there's door underscore handle high which i've exported from zbrush i've got door underscore handle low which i've re-topologised uv mapped and exported from maya i can bring all of that into substance painter so here's my low poly door which i've exported and i'll open it up and we should see the same thing that we're seeing in maya the low poly door and the uv layout so of what i made inside of them again inside of my wheels laying out the uvs and so the next thing you want to do is to bake your high poly to your low poly to get those details so i can go to texture set settings scroll down a little bit to where i've got baked mesh maps click on there i've got high definition meshes kind of highlighted here and this is where i would select all of the the uber high poly meshes that i exported out of them add a zbrush so all of those high polys across there i'll just open them all up at once and you see they're all kind of in a row that's the exact same amount of models that i've got inside of here which i selected and just went file export selection as one model and that way they're going to match up nicely at the top i've got my output size so how big my bake texture is going to be so at the moment it's at 512 but i can put that up to 2048 which is a decent size for a texture i could go bigger than that but again it's going to take a bit of time to process and i don't want to run out of time in the session i'll scroll down things like anti-aliasing it's quite nice to up i'll probably put it up to 8x8 and that's going to really improve the quality of the image that i get at the end and the next one down where it says match by mesh name and that's where me adding the names is useful i'm going to turn it off for the first one just so you can see why i actually did the naming and you'll see it as the error that will come up the only other thing i need to do to this is ids so on the side here where you've got id i will click on that and rather than material color so material color would be inside of maya if i was to just assign a colorful material but inside of zbrush where i added the colors to the vertices i actually want a vertex color rather than a material color and turn out at the end and that way it's going to draw that id map for me as well cool so that's all set up i can just hit fake selected this is where we have to look at this thing process for a wee bit and i could revert back to my slides for a minute while that's thinking about it just again just to refresh on what we just did so in the first instance you're going to go in you're going to sculpt your beautiful high poly model in in the millions and millions of polygons you're then going to want to export all of those parts out but with colored in sections so you can have that id map you're then going to want to re-topologize it so you can get it into a tcc package like a blender or or maya in this case so i used a decimation master for that which reduced the poly count considerably so i can import it in i then use quad draw to be able to redraw my edges over the model and make it a much simpler version and another reason why you want that really simple because it was much easier to uv map similar to what i'm looking at what happens when i z-remesh things which i get a nicer edge flow and that would be much easier the uv map than to uv map this which would be a bit of a bit of a pain there's so many triangles and things if it's very hard to get good scenes out of the model so you end up wanting something simple just because it's going to uv map a lot easier as well cool so that was the uvs in the end id map i will show in a second and this is what i'm hoping is going to come out of the other end when i look at substance ah which it has which is finished now so you can see that it's now baked that detail it's drawn all of the details that i had inside of them unreal but onto my low poly model and you can see here it looks like it's actually got some shape to it that's literally just normal map information kind of faking uh the depth because it is still just a completely flat surface here of what i had uh rather than having um what i've got in zbrush here just frame that where it's all sculpted out and super super high poly and then i was just break it down to a normal map and i mean obviously you lose a little bit of that detail when you stare close at it but um we're thinking about the example in my game where it's third person and you're kind of at this angle you're really not losing an awful lot but you've got a much simpler model to work with when it comes to doing that sort of thing so just looking at the different material passes you can look at normal and height map and that was the the normal map which is doing most of the deforming of the mesh that's giving it that extra extra shape um but uh other maps that are of interest i guess uh well space normal and that's just telling you what's the top and the bottom um and that's useful if you want to add things like sand or dirt and things that grow up the side of things you can work that out based on there curvature this was the map that's kind of showing you where all the detail is and picking out all the all the smaller details and things and i mean the quality is not amazing when i zoom right in but if i take that out at 4k or 16k because i've had a super super high detail on all of these maps as well as i go through i also haven't really drawn the wood grain on many of these panels mostly just down here as i could probably just add them inside of substance painter as i can continue to add more height information inside of the substance painter cool so uh also there should be an id map there as well which we'll look at so that was the colorful version that i exported and that's going to allow me to select things so to show you how that id map works like if i go back to a material i just wanted to drag on a smart material would be pretty lazy with my smart materials today and what we got materials smart materials and these are just kind of pre pre-assembled materials that you can use but i highly recommend building up your own materials from scratch it's a little beyond the scope of today's session but definitely worth learning how to use substance painter and build your own materials and so for me to just drag and drop that i end up covering my whole model as you can see with this one material but let's say i want to assign it to just some of these metal elements i can now right click on the layer that that's on and go add mask with color selection it would then come up with this window at the bottom color selection i can hit pick color and i'll fly over to these bars because i didn't i do that for handle uh but you can see i've now just decided that medal to just these little buttons if i wanted to assign to the handle when i haven't got an id map uh there could be another way i could add that where i just add paint to that selection so if i want to add paint and then i paint um maybe if i fill it in based on the uvs i can click on these sections and then get them to fill in as well because they're kind of separate meshes it becomes much easier to select them so i can just click on them if they're separate but with things like these buttons at the bottom uh they were never separate so i would have had to have gone in and manually hand painted the uh the mask to leave the metal just on there um and so now i can also go and grab a random wood and then we have the rest of the door we've also got a bit of a directional issue with some of these things and then i can add more paint to these other sections as well which probably need it but that's just doing it based on the uvs but again i can add to my id map if i pick a color and then pick all of the orange and then pick all of these sections and i'm able to have all of my metal bits to this door and then the wooden bits to the other bits and that was kind of the reason why i was adding the um the id map in the first place just to be able to do very quick selections and add metal to the bits that i want i want to be metal without um yeah having to go in and manually paint all of that stuff in as it can be a little bit a little bit fiddly cool so i will open up the textured version as uh i wasn't going to do a full texture pass but i have i'll just do a recent recent we can have a look at the final door uh cool and that would be the finished textured door it's got a few more layers going on lots of blending of dirt and mess and things like that but been able to kind of capture capture some additional wood details so things like the normal maps that didn't exist on my original sculpt so i didn't sculpt those wood lines into this section down here but i was able to add it using the height map information inside of substance painter so not to say that you have to add all of your your detail inside of them zbrush you can go in and add more detail inside of the substance like for doing for doing height and high frequency stuff as well and that could be quite a nice way of working so the normal normal maps just like that but if i look at this you can see all the additional normal map information that got added through through substance so that's quite a nice workflow and the good thing about doing things in substance is a little bit more forgiving i can play around with the scale of things and turn things on and off quite easily whereas in zbrush once you've kind of sculpted things into the into the model it's a lot more difficult to kind of adjust it or get rid of it unless you've really thought about it beforehand things like these um lines that i printed a wood down here if i wanted to change that wood type it pretty much be easier for me to start it again than it would be to try and remove it and add it again i could flatten it down and then draw it out again you can use some methods to store earlier versions and roll back too but generally once you've sculpted a thing inside of zbrush then it's sculpted and you have to blend it away and then sculpt over it again rather than when you're inside of substance painter where it's a bit more procedural you can kind of keep chopping and changing and changing your mind and that's why sometimes it's quite nice to leave that that fine detail passed to being inside of the substance cool so moving on once you've actually made that material you just need to export that texture out so just be a matter of going to export textures um you can pick out a template i think i made one earlier which is the unreal engine door uh you can see when you're working with unreal engine you really want to stick to a good naming convention so things like t underscore for textures is quite good bc would be for base color orm is occlusion roughness and metallic and those maps we can see right here let me cancel that if i went to my metallic and that one generally represents whatever's white is metal but if it's black is not metal cool so let's have a quick look at it in the game as i see that time is really flying by it's not what we have now seven six oh right so we've come very close to the edge we always leave lots of time for talking again to talk a little bit about nanowits as well i really need to uh give myself two hours for these explanations for that it's quite it's a complicated workflow it's something that you spend you know a couple of years developing on the course to get really good at and to be able to be quite quick at making kind of high poly models and then being able to get them quickly inside of a game but once you've got your finished kind of optimized uh model then you can go in and just play this uh game experience yeah don't swing your sword uh yeah this was just the map that we've been been working on and that was that door uh that was sculpted in zbrush bike down and then placed into the game and then give him uh some blueprints to have it animate and move around but uh but yeah it's looking pretty decent and you can't it's closing on me there we are nice so there's a few elements inside of here that were through zbrush but most of it's super optimized and very lightweight it's all quite low poly there's a couple of sculpted things but we've really tried to be efficient and that's something you look for really with um when you're working in games it's getting as much reuse as you can out of the elements that you do things like this door is not so reusable but certain things like these textures you can see it kind of gets used again and again again same as the columns same as windows but through the layering of things you can really start to break it up and get variation so you seem to start with things that are quite simple but just build on top of it and add damage and layers of damage uh to it i've got time to even talk about nanites well i'll convert something quickly into a daylight just because um i did want to talk about it a little bit longer but i'm really giving myself that much time but it's really new stuff uh there's a cool link i'll leave in the chat just a little talk about it just because um when i have as much time i don't want to talk about that as well uh no no inside unreal this is really good where can i put that where you guys would see it under the chat or panelists and attendees that should do it so you should see that link come through and that's really useful well it's more of the creators of the the nanite um uh talking about it and breaking it down how it actually works um but and what you're seeing in these screenshots is is all geometries that's millions and millions of polygons like a trillion polygons there to be able to generate this world uh similar with this this is a part of utah i think that was that was scanned uh completely accurately and then recreated in unreal using millions and millions of their of polygons essentially using like your original door mesh as it would be like taking this 54 million poly mesh and putting that straight into unreal which would would be super cool and it's just how much you benefit from it in a normal workflow because it would be time consuming but to export 53 million polys takes quite a while to get it in it's got to be processed and then get into engine and there's also this size as well it ends up being a really heavy project uh i'd recommend downloading the utah project you can find it on the um the unreal marketplace and it really shows you now like it's at work uh if i've got that here somewhere please there yeah [Music] um but yeah i was going to show it at the end but i started to download it but it was a it was big it was it was like a hundred gigabytes uh but value of the ancient you can grab it off of the um uh ue5 uh section on here and it's just really a scan of that entire environment that you can fly around and you can see nanites working but it has its caveats things like uh trying to uv map a 53 million polygon model is pretty difficult not impossible i would thought i wouldn't be able to uv map the original mesh i might be able to uv map the decimated version which i could then take into unreal and work with because poly counts aren't such an issue so taking that um [Music] that decimated version that i hadn't um is this phone actually happened i started to uv map thinking it would be a a useful workflow but i think it ends up being being very high quality open source or very time consuming to go through and uv map what will be this mesh that will load the other one but there it is so yeah i could go through and uv map this and run and put that straight into um unreal engine at a very high poly count and that already has quite a lot of the detail and things that were in there and then i'd have to go through and bake that and then still do a pbr pass on it as well i'll just have i guess a much more detailed silhouette in my final model than i get from uh from this one but the game wouldn't be massive i guess and the time it takes to process it and get it ready i guess you wouldn't have to have to re-topologize you wouldn't have to do the quad draw process but uv mapping becomes longer so i guess uh using the new technology and being able to put millions of polygons in is great really exciting but uh you can see why it's kind of in beta and we're still kind of working out good workflows to be able to get the most out of being able to use millions of polygons and in some scenarios like doing piles of rocks and things like you would do for that utah desert would be a little simpler and easier to get on with certainly in terms of uv mapping a very high poly version of a rock uh might not be so difficult as it would be to do this where you've got so many separate sections that you would then have to to think about if you were doing it um yeah for for millions of polygons um but in a nutshell essentially this is how we've been working with zbrush uh for doing high poly stuff and it'll be the same for a character you go in you redraw redraw the edge flow of the character you uv map it and then you break that high poly character onto your low poly character you wouldn't be able to get away with decimation so much on characters because you've got a deforming mesh and triangles tend to not deform as well maybe when you're talking 20 30 million triangles you might not see it as much of an issue actually and it might be fine but um um but yeah uh essentially at the moment we carry on kind of bottling things this way root apologizing breaking down uh to get your detailed final map and then get that into the engine and have it all run happily um in frame uh i will try and do another webinar in the future where maybe i'll do one more on nanites and how we can work with very high poly meshes um straight into into unreal um but at the moment i think that's uh pretty much what i'm recommending that you study up on in terms of if you want to be able to use it to get your high poly zbrush interesting sculpt into your game engine this is a very good workflow in terms of uh redrawing the edges making those textures and then really assigning it all inside of unreal the only thing i probably put didn't actually look at which i would show you quickly was just the the material set up which um when you actually bring those textures in so this is what got exported out of um substance as we saw these these the textures that were made i tend to add a little bit of look there things that allow you to adjust the intensity of normal map the roughness uh on there and the color tint and you can see that with the with the texture on the model and they're quite simple setups it's just a power node increasing the power a flatter normal is a node that will flatten the normal but because i've got a one minus inverting it it allows me to give it a stronger normal map and if i select the model i should have the instance here somewhere uh there it is to do it's got sliders that now relate to those um things i added the normal map strength so if i drag that is it assigned to you still got a little lagging come on oh yeah well you see that all that through the roof there but uh aesthetics i've tracked it up to 200 but these are things that i can adjust seems to be lagging a little bit now um yeah things like roughness as well like the how shiny it is and how unshiny it is and the tint would make it brighter or darker i won't go into a very diff example but it's a good idea when you're working with any materials inside of umbrella to try and give it some functionality that allows you to adjust once you see it inside of an engine cool so i'm just going to quickly go through any questions that i've missed i have tons look at that i wasn't scrolling down one second i'll quickly do this so uh do you know to what extent would you usually use texture instead of detail um yeah i mean it can depend on the object so for this one for example for me to re-topologize this would have given me lower quality because if i've got a quadro over this i'm not going to have it as high poly so my curves aren't going to be as smooth as this so the reason that i would bake that to a flat surface is because the texture is always going to have really smooth even lines um so if i think i can get more quality baking to a flat surface than i would do a low poly version uh then those would be the occasions but i definitely uh wouldn't apologize it uh in the same way i wouldn't bother doing the extra being so it's mostly floating parts and there's different methods of approaching uh these like i say but uh generally if it's um if the thing doesn't go any further than a centimeter away from the original mesh then i don't bother re-topologizing the screw heads for example i just do a flat surface over it and just bake it and it'll be flat and it'll look fine and clean uh i think oh yeah so the height yeah about a centimeter away from the surface two centimeters it can depend on the game that i'm doing as well if it's first person or third person or how close i get to this actual object uh is going to determine how much detail i go into um for doing it but generally any detail that's less than a centimeter i'll always bake because it's just not worth the effort of quad drawing around it and getting a slightly reduced quality uh by the end another question about meteorology what difference does it make um following the flow of the mesh versus drawing only one plane um well in this instance uh if i was to just draw one plane that went around here i wouldn't be able to to match the silhouette so i definitely need some edges uh going across to get the get the curve at the top um i think i kind of answered the question i guess previously where i'm saying by having a low poly version of this would give me worse results than it would be to just have it flat because um low poly would just be angles going around the circle whereas flat is a is a perfectly smooth normal map so it can be a lot of trial and error uh that wasn't the first bake that i did at this store it went back and forth a couple of times and it was looking to go oh do i need geometry to to do this chunk for example maybe i've got away with it i think it's quite nice to have to frame things so i like to have that ledge on the side um for these i thought they looked a little bit more interesting just to model the extras i probably didn't need to i could have done that flat i actually think that looks a little bit more interesting when you see it in the game and the fact that it's connected to this i thought it was a good idea to control over that things like the screw head so i ignored i added the heads on here i think as well um but not that i really needed to i i think i just because i'd already added it on this one i just duplicated that piece and used it on these parts so um easiest i guess uh it isn't reducing quality and you can see what i mean by having an angular low poly gives me angles here now whereas if i'd have baked that completely flat to the surface i would have got the perfect curve of the shape but because i modeled it i can't bake it uh onto a low poly model and maintain the quality so i actually sacrificed some of the silhouette to be able to have that little bit of extra depth uh when i'm looking at that yeah hopefully that answers that question i think it did pretty well i think i should probably wrap things up as well i'll get told i've seen so uh yeah i think that's probably going to come to the end i hope you found that useful at least as a nice overview and got you interested in working with zbrush and being able to get that from start to end into an engine um yeah excellent so i i will wrap things up there hopefully you'll also see that video will get uploaded and that's good for you and nice overview of um that workflow and i hope i get to do another one in the future as well where we do we'll have a look at using mega high poly models and nanite which is super exciting and that with lumens as well which is the new lighting system which is equally as exciting as well and time saving from from some things that used to be quite laborious with a making games is now becoming much simpler a lot more user-friendly and it's much more about getting your ideas into onto the canvas really being an artist rather than having to go into quadro do these kind of what feel like quite tiresome jobs uv mapping of things everything is becoming automated for your generation i think i just about missed the boat i think i had to do it all labourously but anyway cool well thank you for listening everyone and uh enjoy the rest of your point
Info
Channel: Escape Studios
Views: 587
Rating: undefined out of 5
Keywords: Escape Studios, Escape, studios, VFX, Visual Effects, CGI, Maya, Autodesk, Nuke, Foundry, I want to learn, tutorial, modelling, rendering, dynamics, texturing, animation, renderman, compositing, ncloth, motion graphics, design
Id: xqnW2UvF_Bw
Channel Id: undefined
Length: 72min 2sec (4322 seconds)
Published: Wed Aug 25 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.