The ULTIMATE Guide for Creating Grass and Vegetation For Video Games 🌱

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

Because it was the first thing I checked:

-Zbrush

-Maya

-Blender

-Substance Painter

-Unreal Engine

πŸ‘οΈŽ︎ 82 πŸ‘€οΈŽ︎ u/Hexegesis πŸ“…οΈŽ︎ Aug 10 2020 πŸ—«︎ replies

I fricking love what you are doing man! Stylized Station rocks! Keep it up

πŸ‘οΈŽ︎ 10 πŸ‘€οΈŽ︎ u/tadeocore πŸ“…οΈŽ︎ Aug 10 2020 πŸ—«︎ replies

Thanks for making this! I'll certainly have a look, it looks very comprehensive!

πŸ‘οΈŽ︎ 7 πŸ‘€οΈŽ︎ u/RadicalRaid πŸ“…οΈŽ︎ Aug 10 2020 πŸ—«︎ replies

It's in the YouTube description as well ☺️

πŸ‘οΈŽ︎ 8 πŸ‘€οΈŽ︎ u/Illumii πŸ“…οΈŽ︎ Aug 10 2020 πŸ—«︎ replies

goodies.

πŸ‘οΈŽ︎ 3 πŸ‘€οΈŽ︎ u/unitcodes πŸ“…οΈŽ︎ Aug 10 2020 πŸ—«︎ replies
πŸ‘οΈŽ︎ 10 πŸ‘€οΈŽ︎ u/lucidlogik πŸ“…οΈŽ︎ Aug 10 2020 πŸ—«︎ replies

Can this all be done in blender?

πŸ‘οΈŽ︎ 2 πŸ‘€οΈŽ︎ u/Rorybabory πŸ“…οΈŽ︎ Aug 10 2020 πŸ—«︎ replies

Watched this earlier today and thought it was fantastic! Learned quite a bit, thank you so much for sharing the knowledge!

πŸ‘οΈŽ︎ 2 πŸ‘€οΈŽ︎ u/ChillGhoster πŸ“…οΈŽ︎ Aug 10 2020 πŸ—«︎ replies

I also look forward to the follow-up video on how to make turn-based plants πŸ˜›

πŸ‘οΈŽ︎ 2 πŸ‘€οΈŽ︎ u/Kazuto88 πŸ“…οΈŽ︎ Aug 11 2020 πŸ—«︎ replies
Captions
this tutorial is sponsored by the 3d coloring book a project specifically designed to help empower artists who are struggling with texturing a substance painter and to help show you that anyone can create beautiful pieces of art with just a little bit of practice and guidance to instantly gain access to hundreds of pre-made professional level models and hours of high quality tutorials click the link in the description and begin your journey today [Music] [Music] hey hey what's up my name is dan sonley and today i'm going to be walking through my process of making plants so my goal with this is to not only show you how i make a plant but also try and throw in some nice little tips and tricks that will hopefully make your life a lot easier so during this there'll be quite a few parts where i show you a few little nice tricks which will try and speed up and autumn make different processes because there are a few bits which take ages if you do it by hand whereas if you just do it with a you know like a an action or something you can do it really quick and you can then spend that time doing well doing something better so like you can spend the time sculpting or texturing instead of hand placing hundreds of leaves or something so to start off with i'm gonna just i'm just gonna show you through an entire process of me making the the plan that i'm using in this uh i don't think there's a whole load of stuff i can go into with it so i'm gonna try and go quite quickly through it and then afterwards i'm gonna go i'll go through a bit more in depth and a few of the more the more challenging elements so if you're not too interested in the modeling or texturing then feel free just to skip ahead okay let's get started then so the first step as always is always gathering reference make sure you've got a really good reference um i use a software called prf i would thoroughly recommend it's free and you can just throw loads and loads of images into it it's a really really great start for this i actually have one of these plants in the uh in the garden so i didn't have a whole little reference so uh it might be a bit of a bad example but for this i was using a uh concept i found by a really talented artist called losh uh she's dutch and uh i can't pronounce her name so i'm not even gonna try but uh super super awesome artist and uh yeah i really really like the way she treats colors and shapes so i was using that as my main roof the easiest point to start is usually modeling a blockhand or a rough fear leaf because there are a lot of things you need to work out um but you will definitely need a leaf and you will definitely need something to bake from so whilst you're sort of brain thinking and trying to work out how you're gonna do it you can always just start by modeling a leaf and by the time you get to something that needs a decision you probably already worked out there's nothing worse than procrastinating because you don't know how you're going to do it so i usually like to just jump straight in yeah it's probably not the best way but hey it works once you start getting towards the end of your like first initial leaf this is when you sort of need to make your first major call so as you should be aware i already said hope you're aware leaves uh two-sided objects um and they are different on the top on the bottom now in unreal i'm gonna stick with unreal because i don't know the other engines but like there are three ways about approaching this uh the first and simplest way is simply just having the same on the bottom on the top just have a two-sided material generally that is enough like most people won't notice that you have the same underside and the over side but if you really want to be super fancy you can you know you can have a different top and to a different top and a different bottom and you basically have two ways of doing this you can either do it in the shader or through geometry generally i prefer doing it in the shader i think it's a little bit less to deal with but uh you know it's a case-by-case thing like sometimes you want to use geometry for it sometimes you don't like you kind of just gotta try them all and work out what fits best for you i am a big fan of trial and error like there's no better way of learning than trying it and realizing it doesn't work not because you've learned it doesn't work because you but it's because you've learned why it doesn't work so it's kind of hard i'll try and explain the three different types but i would recommend doing a test piece and just trying all three see what fits you the best so method one the simple and easy one you you do nothing it's great you just turn it to two-sided mode job done finished method two is you can use a um a two-sided sign node uh i'll show you that later but uh it's basically a node that says is this the front or the back of a polygon and it will output a one or a zero so you can just use a lip so you could call in a different texture or modify your textures with different like multiply green into it or something fancy like that uh if you want to be really fancy you could offset your uvs so you basically have like your top side on one half of your texture and then the bottom side on the other side half of the texture and you basically you shift your uvs depending on whether it's the top or the bottom um it's pretty easy to set up and it's yeah it's pretty effective i recommend this now the third method being using basically separate geometry for the top and bottom i would reserve only bad men who have pro skills and have done this before i it works really well but baking is baking is a bit of a pain but basically you just have like a separate you just have two leaves one on the top and one on the bottom one for pointing up one pointing down and just have single sided geometry uh yeah it's it's pretty effective um but yeah as i say it's uh it's a total nightmare when baking like it it hurts my brain so i generally avoid it simply because it scares me so in this case i kind of wanted to do a bit of a mix of the two and it's kind of hard to see because it's not i've got a best resolution on this but i kind of decided that i wanted to do the stem you know that is one piece and then the leaf there's another piece um so as you can see it kind of like almost like a little glove that kind of wraps around it i'm doing lots of hand gestures but that's really not helpful um so you have i basically used a wait let me lead my so the leaves are a two-sided like a two-sided sign material and then i'm using separate geo as to sort of contain and hold the thing there's like a nice little bit that joins it all together anyway back to modeling so once you have your first leaf kind of in a good blocked out phase you can just duplicate it and warp it into the other leaves uh as it's like a little mid-level block out you think don't be too precious just kind of get the get the forms get the shape get the overall thing uh we're gonna come back later after the sculpt so you can kind of you can get you all your shapes and your your nice little details and your sculpt and then uh yeah you want to pick it reintroduce them back into yellow poly but uh until we've got them just keep it nice keep it keep it clean once you have the majority of your shapes it's uh it's well worth getting an early unwrap just so you know that everything's there everything's gonna fit and you're not going to have issues later down the line where suddenly you need space for something else so i tend to make like proxy meshes so as you can see here i'm just adding a plane i'm just unwrapping it to the bit like i know i want an area of the uvs dedicated just for sort of green stuff so i'll use it for the stems and any other kind of bit that wouldn't doesn't need a unique wrap once you've finished all of the pieces it's about time to just start on the uh high poly so make sure you've got a backup so duplicate it put in folder do whatever you do and then you want to start modifying this proxy into into what you're going to use for your high poly so generally i just simply extrude it give it thickness add some supporting edge loops and stuff nothing fancy just the usual once you've got your block out done the next step is to make the high poly when sculpting on really thin stuff like leaves you're going to have issues where you're you're basically painting on the back of the surface so you can turn on auto masking so auto masks back faces which will make everything so much easier uh it's just like brush auto masking back faces unfortunately i don't really have a whole lot to say about sculpting like it's kind of this whole step is the practice makes perfect stage so i guess you kind of have to just give it a go and see how it goes generally i'd recommend trying to pick out a few of the defining shapes so you can see i basically i just took the clay brush and just stroked out some of the the main shapes i mean they look nothing like they should but it's just something something there that i can then pretty much use as reference for as i sculpt over it i'd always recommend with sculpting time try not to be too precious with it like you'll always start off looking awful like no matter how good you are you there's always that moment where it looks terrible and you just kind of have to keep pushing with it uh once you've got the entire like leaf then maybe yeah okay this is not quite writing but when you first start you just have to keep going with it once you've gotten enough enough to sort of get an idea of what you're doing it's uh it's well worth exporting out and doing some test bakes putting in engine just so you can you can get like a final like an impression of how it's gonna look in the final product so that kind of stuff am i doing the right thing is this the right way forward before wasting loads of time sculpting a leaf and then you know just being like oh i've done it wrong this doesn't look good like if you if you if you check it right from the start then you're not gonna you're not gonna catch yourself out later back in the day when uh when i first died like uh workflows were like super linear like you do this then you do that and then you then once you finish this you can start on the next step but nowadays you can kind of just bounce back and forth like you know just re-import it and rebake or you know import some new textures like recalibrate i don't know like it's it's so easy just to jump around like it's guess it's well worth making making use of this flexibility meaning like there's no harm in not doing so like you gotta you gotta import it all into the engine at some point like why not just import it a few steps early like yeah i think i really think that i'm a firm believer that is uh you know it's well worth doing like if you can preview your final product like 10 steps earlier you can you know troubleshoot 10 steps earlier but anyway so when you're happy with your leaf just uh you know sculpt the other leaves when sculpting leaves i generally don't use a lot of brushes i use the standard brush clay brush clay build up damn standard smooth alternate smooth that's pretty much it like uh i tend to do fine details in substance painter so getting uh getting i touched like i go for a nice clean sculpt especially when doing stylized things if you're doing a realistic leaf you can kind of you can get away with a lot more sort of noisy stuff like um i will use the clay brush and then just not smooth that out because that weird lumpiness kind of works quite nicely as leaf texture but um yeah if you're doing with more stylized you kind of you want to try and keep it a bit smooth a bit more clean but uh on the other side don't you know you'll never get things like perfectly clean and perfectly smooth so don't don't waste too much time trying to trying to smooth all that out my personal favorite step when uh sculpting leaves is uh is trying to break up the silhouette uh so with this you just want to grab the move brush and just kind of pull bits in and out a little bit no nothing too major but it really really adds to the um the final product like breaking up the alpha mask is uh really really really nice so just kind of want to add a few little subtle subtle like poles here and there once you're about done with your sculpt you want to pump it back into maya or whatever you're modeling in and align up the original mesh with your new high poly so to do that you just want to decimate your mess otherwise you know maya will die if you don't use decimate before it's a great tool that just uh reduces the polycount of your meshes so that's in z plug-ins decimate and you need to process your mesh and then it so anyway we want to decimate our meshes and pump them back into our modeling software at this point you want to take that initial block out mesh and duplicate it again and we can go and make our low poly now from this original mesh we've made it should be quite easy like the mesh should match quite well obviously if you've done some tweaks you'll need to realign the that base base mesh to fit your tweaks but um other than that it'll just be a little bit of refinement here and there the two things you want to be considering whilst doing this is um the further your low is from the high the more baking and cage issues you're gonna have and the second one will be thinking about overdraw so anywhere where the alpha is cut through where you can see through it the um you'll be getting overdraw so you kind of want to minimize that as much as you can so if you have your low as close to the edge of the high as you can you will reduce this cut out area as at this point you've basically got a finish mesh you may as well assemble a posed version of your plant this will help with your texturing as you can actually look at it and you can also just import it into unreal check out your final stuff don't be afraid of tweaking this posed version the as long as you don't change the uvs the bake will remain the same so you can tweak the leaves and individually pose stuff and make it make it look nice without worrying too much about making things more complex for yourself in the bay baking is definitely my least favorite part of the process you just kind of have to shuffle things back and forth until it works uh yeah in this smash i kept getting i kept hitting holes so i was trying all sorts of different things and it ended up being a mixture of different things uh which i slowly resolved one by one i would say the main things to watch out for are bits where the cage is skewing weirdly so intersections and stuff but also uh watch out for weird triangulation because um sometimes you'll find that maya is triangulating a mesh differently to to like marmoset is and yeah you end up with um you end up finding something that won't go away and you're like oh it's it's just that it's different in each software okay that makes sense and then you just kind of triangulate it and it's all good once you've got the bake sawed though you can move on to the fun bits yeah for me texturing is definitely the the most fun part of the whole process i love it i i don't think there's a lot of real tips or advice you can give like if texturing every asset is different so i'm just gonna switch to or commentating mode and i'm gonna i'm basically gonna talk through i guess my thoughts and what i'm doing and hopefully that will be enough okay so the first thing you want to do is you need to fix any errors in the bake so that will mostly be in the alpha mask if you have a good clean bake and you can just simply just go and paint it out in the substance so as uh as i did before uh it's really nice just to launch up unreal and you know make sure everything's good so i just jump into unreal reload the leads reload the textures just give it a bit of a spin around fix up any day things then uh yeah just hop straight back into painter so once i got everything everything nice and good in painter i i like doing basically a first pass using generators so these are all really simple they're just like you know fill cavity fill ao do a little bit of this do a little bit of that uh i also make use of the blur filter a lot so as a so there i just added a few splash spots and then just put a really strong blur on it and it gives it a really really very gradual kind of gradient uh it's quite nice just for a little bit of color variation i did that a few times and uh yeah and that was a bit about it really for my for my first pass once i'd done that you kind of i started going in and adding a little bit more like pan painted detail to be honest i'm not really that good at hand painting it's uh it's really hard so i kind of i accept this and i i take it slow so you know make sure like yeah it doesn't matter if it's not perfect first try just take your time and make sure make sure it's right in the end and quite often you know i paint something no that's not right turn down the intensity and or you know modify in some way but uh yeah as long as it's all getting that that little step closer to the end goal then that's all good so at this point i was kind of just kind of debating like the normal map felt quite strong so i i basically blurred out the normal map so i have a painted in uh pretty much flat normal instead which i combined with the with the existing normal map so you had like a bits which are flat and bits which are not now that i'm a little bit further with the texturing and got some nice blockings i yeah i thought i'd update the unreal stuff so i started working on the shader a little bit so you know you have your default pieces uh adding the you know the subsurface and i then started to set up the um you know the two-sided leaf thing so doing that i'm just using a like a two-sided node and i used a lip to love between normal and underside so as you can see there i used um use a strong green and red just to double check that everything's working fine and then yeah when i when i worked out what's going on just replace it with what i actually needed so i just desaturate the underside and multiply a slightly some a bit of blur into it i'm also using the subsurface to add some color variation into it so the subsurface mask pretty much will pick out the veins or strong details and yeah i can use that just to tweak the the underside slightly because uh the underside wants the the veins to kind of pop out a little bit and i didn't want to add that into the texture because it would look weird on the top so yeah so i'm just taking the subsurface and you know multiplying it into the into the diffuse and so after that i'm just hopping straight back into substance painter you probably noticed that i am constantly jumping between the different software like i kind of find if i stick at one thing too much you kind of get you get a bit lost in it so if you bounce too unreal and you bounce back to substance you kind of you know you keep yourself fresh and [Music] you get you get a better idea of what you're making anyway so i yeah i'm just getting on with the start to paint in the details of it um all i'm doing here is i'm just i've just made a i actually put these in a group because i found the when you're hand painting in substance painter if you use the color picker sometimes you'll pick like normals or heights or roughness and i i find it really difficult to work managing all of those things at once so when i'm hand painting in substance i tend to use i tend to do them one at a time so in this case i put them in a group and on that group i just set the roughness to hide them normal all the stuff to zero percent so it's just the base color now even if i start painting loads of weird normal maps or something because it's in this group it just it just kills it and you it just it just lets you focus on just doing the base color uh yeah and then yeah and then you can just repeat and do the same with the roughness and stuff you know it can be useful to do it all at once but it just blows my mind i can't deal with it i find like balancing like the colors and keeping the roughness in control and you know all the steps doing them all at once it kind of it really slows me down so i end up just uh breaking apart and doing it in nice little groups so uh hopping back to unreal um i just wanted to make sure all of the maps i've been creating worked so checking that the hand-painted details look good but also checking that the subsurface the mask that i painted looked good um because i was using it in the base color as well as the subsurface it was like doubly important to check that i was actually on the right path with this um yeah because if i wasn't there just be like you can you know you can pump by hours of painting into something and then just uh and then you just do all wrong and you're like wow what a waste of time so uh yeah i just super quickly checked i'm doing it yeah and then i was like oh maybe i should add some mud maybe that'd be nice and then uh and then i decided it was not nice and i couldn't be bothered which uh you know productive use of my time anyway yeah uh so after doing that i just kind of wanted to really double check that because there's a few little things that are bugging me like the mesh do a little bit slipping so i was just that's why i'm just in my now fixing up and uh just making a little bit a little bit cleaner like now that i had a like a good version where i could see everything i could spot there was a seam in the basically in the subsurface and it was between the the stem and the the double layered part of the leaf uh to fix that i was just so uh maybe i just paint this obsession so i filled in the subsurface and that fixed that error anyway back to the painting so with the painting uh you know you start with the big shapes and then slowly refine it and get a little bit more polished as you get deeper uh i tried adding some sort of harder edges in here i thought it might help pick out some shapes a bit better uh some of the heart shapes didn't work too well so i so i turned down the opacity a little bit and pushed them back but know overall this this part this part is quite fun uh although i have a have a habit of getting way too excited and doing too many details and going overboard with it so uh i have to kind of hold back quite a lot keep it nice and subtle so as i was sort of approaching the end of it it was uh pretty apparent that i uh you know the the sort of like the composition of the leaves and stuff it wasn't really that nice uh and i wanted to try and bring it back a bit closer to the concept so uh yeah i just hop back into my do some tweaking and yeah make it a little bit nicer so it's getting to the point where i'm adding the final touches and uh so here i just paint in the uh some roughness details and then uh after that i just start adding some you know some overall gradients like trying to add the overall readability of the leaves and stuff so here i just add some some different tone tonal changes some freckles and a uh a little bit of uh wear and tear and uh yeah just just some generic details that you know just give a little bit more life a little bit more character so having finished with that i just kind of threw everything into unreal and was trying to try to set my scene a little bit trying to get some uh trying to get some kind of idea what i what i was wanting to do trying to make it look pretty i kind of wanted to make that little little wrappy dead leaves at the bottom and because they're really tiny i didn't want to spend much time so i just duplicated the leaf and then just used a bend modifier i kind of you know kind of just positioned it a little bit so it was kind of just using the same things with a pretty rough bake but uh you know it it didn't need much to do the job so once i you know made the mash down the bake and put it into painter and kind of just copied the leaves and tweaked a few values and added some kind of grunge onto it and that was all it really needed so with that done i thought you know it's time to make some variations so i quickly jumped into blender broke everything apart and i used the cloth simulation which i'm going to go into later in more depth but uh rather than using lots of bends and stuff it's super quick and easy just uh cloths and uh unfortunately it kind of broke a few things there because uh because i have multi layers so i had to go back in and fix it in wire once uh but yeah once that's done you know planning is done in uh in unreal there are you know there are loads of different ways of populating your level you know you could just place them by hand or or you could use the foliage tool which uh you can just drag some meshes in uh give it some give it some simple settings and then just paint where you want meshes to be added in the giant cube just so that things were things placed on it because uh because i was using transparency it was a bit bit it didn't really like it so i just added in some actual geo but anyway yeah so with the foliage tool you can literally just paint where you want it which is uh which is really really nice and great for most cases um but uh you know if you want a bit more refinement like yeah you can you can kind of repaint and you can move things around and individually do bits but other than sort of blanket covering things it's uh you know you can't quite get what you're after so say for instance you were you know making some shelves with loads and loads of pots and stuff in it and you had to individually plan each plant now obviously the foliage tool wouldn't work so how are you supposed to do that just uh you know put a plant in every one you know it's only uh only 700 more no no that would take forever that would take all day so what i'm gonna show you is um so the way i do this is just use a blueprint a construction script and yeah it'll save you so much time okay i figured this bit would be easier to record as i go so i have a example here which i've already made for my other project and basically the idea is we want something that we can populate our stuff very very quickly and easily because if we use the uh you know if we use the foliage tool or something we just don't have the control that we require okay that is a bit crazy so to do this we're just going to use a uh yeah construction script so in the construction script wow we need to make a blueprint first in the blueprint you have uh you know standard viewport stuff construction script and event graph uh event graph is like runtime stuff so we don't want to deal with any of that so we can just get rid of that so it's all going to be done in the construction script so first things first we need to somehow make something that spawns a mesh so to do that we will use a variable which is like a stored information which you can recall at any point so static mesh if i could spell oh it's too early i can't spell anything static mesh and then we want to use this as an array so we're going to have multiple of these say compile call it something plants ah this is the wrong static mesh static mesh actor will be that one delete all that weird stuff edit it now i need to compile there we go so with this we can just add our three meshes in this little tick box says uh if the variable is viewable so if i was to uh drag our blueprint in and just compile this first of all you want there so this now shows up here so i can control it per instance whereas if i turn it off it's hidden and you can only control that by opening up the blueprint so anyway we probably want to turn that on for that one but obviously that's not doing anything so currently we're just uh storing the assets we want so what we want to do is get plants and then an array you get from array so get a copy and then you can just do it you can then add this in so to add in we need to add a static mesh add static mesh component and then we need to take this this is like a an empty static mesh as you see it's got nothing here we could set it like we could say yes use that but then we would only be getting the uh the one so we want to then set set static mesh so this uh target we just leave it as self or bring it through here either works and get from here so currently this will get this number so number zero so that will be get plant one now if we can pile that that will just stray up at a point which isn't very useful we could just do the same by adding in the plan so let's put this name it add static mesh change the core if you want i always change the color useful for finding things so what we need to do is we need to set this as a random number so you can just do uh you could i mean you could just do a random like however if you do random integer or random within range it will you kind of lose the control of when it's randoming and you might find that it like we will re-random a fun creation so say you build lighting or compile the game and it re-randoms everything which i personally don't like i find it as a bit of a pain like you end up with bugs and or like unbaked lighting or broken assets and stuff like if you play something like yep that's good and then you come back the next day and it's like re-random do you like yeah that's not useful so what we're going to do is uh random from stream again within the range so the stream is basically like uh if you played minecraft or something and you have a seed it's like a the random comes from this number so it's like you feed it seven it'll do some maths on the seven and then like the answer is x and every time it will always come to the same because that initial starting point is always the same so we'll need to set up an initial starting point but that can wait for a second let's finish what we're doing here so we're currently a random number between zero and zero which isn't particularly helpful so let's get our array and just do count or length and uh set that as the max so that is saying it counts how many things we have so you know three random between zero and three uh this always confuses me because it starts at zero you can you end up like you have to onset because if you go zero to three you're now have four which we only have three options so we kind of subtract uh just subtract one from it i'm not entirely sure if this isn't compulsory if it's needed but i always do it and then i'm like is that right and then i delete it later if it's not right it's better to be safe than to be sorry so oh great oh yeah because there's no stream cool cool uh so we need a stream so promote a variable call it stream so the stream yeah this needs to be hidden within the game you don't need to change that at all so now that's awesome we've got a random from stream but it always randoms the same because the stream is the same so we need to do a way of making the stream come up with something separate there are a couple ways of doing it but i usually just go with a really simple thing and i just take the object position location will do get location oh man i can't respond it's too early in the morning or yeah get out to location self means getting the location of the blueprint so then we can just do split and it all splits into the xyz so this is meaning that as it moves we will get a different number but we don't need three numbers and we kind of want to take into account all of them so you can either like add them together or something i usually multiply them because you end up with a basically a bigger difference because if you add them all together you there's not that much difference but like not that much variation and i kind of i feel like the further you push the the randoming the um the more the more intense it'll be the more accurate it'll be so streams are is literally just a number so you can do the split pin it'll split it into an integer and then you can just convert a float to an integer and that will now so on startup on construction set your stream boom save compile so now as we move our asset it will random between the three of the choices want yeah that's all through right yeah i was just trying to work out whether this uh whether it was randomly between two of them and i'd messed up already okay so that's a great start but there's not really a lot of variation you can see so what we can do here is we can actually set some randoms up on the the transforms so again split the pin it makes it slightly easier to work with let's move all this stuff down so we have location rotation and scale so we don't really want to change the location because i mean that's the point with replacing it by hand like we don't want we don't want any weird like randomly it makes it kind of it makes it difficult to work with if i'm trying to place this in the middle of this part and it's just doing some crazy randoms then as just not what we need so let's start with the uh start with the scale so the scale is super easy like we only need one value like we don't because we're doing uniform scaling for for this well we uh basically just need to take one value random it and then plug it into the x y and the z so because i'm plugging the same thing into all of them i'm just going to split it i'm going to do the exact same as here grab this so random stream between a random number between stream ah no actually that's an integer i want a random float in range of stream that way we can get decimal points and we basically just plug this into here we plug into all three uh as a quick tip if you double click on a on a cable or connection it will add a reroute node and you can then plug that into all three super tiny as an artist i take great joy in arranging my graphs and making them as tidy as i can anyway that's totally random so for the random we won basically a minimum a min and a max promotes variable scale max promotes variable scale min and that will basically rent it will say randomly between these two values so let's put that in a thing scale random how do i spell scale random so save compile obviously it's random in between 0 and 0 currently so max let's go 1.2 min 0.7 so that you know that adds a bit of variation already but the real thing we want to do is adding in the rotation which is a little bit more complicated so because we want to basically uh change the uh all three of them so the pitch the er on the raw we want them to be controlled separately so yeah again we just split because displaying makes things easy and we will be going with the oops the same kind of thing up here but in a slightly different way so let's have a let's have a new value so another float let's call it wobble and have that oh we want these to be controlled outside of the blueprint okay wobble get wubble so the wobble i'm gonna basically say it's like this kind of stuff um that's probably not very helpful but uh i hope you understand what i mean by that so we want this to be a basically a plus or a minus thing so rather than having like a big scary thing where we say style what like because we want it to go forwards but also backwards so to do that we just do uh one or zero minus that value so subtract float no that's float versus float so we have our top which is just our strap thing so random seed let's go wobble minimum and wobble maximum now i've done that wrong so this will now random between plus or minus of this value because we don't want both of the uh values to be the same we kind of just need to re-run them again from the same things etc rewrite for that it's a bit messy however if you've been following and know about blueprints this random from stream get around them the same value so that's not really what we want so how do we do that well just uh modify it really it's just a number so if we split it back into a thing and then just go multiply integer versus times multiplied oh what's it called no n times n let's just say times it by three that way it's a nice odd number uh we need to break this into a instrument and then just yeah add the modifier so now that will add well not add that will give us two separate values based on this so that can be our x and our y now if i compile that also 0.7 that's going to be not a lot of wobble anyway if i compile that they should have a little bit of variation and i can just up that and it will ah location i'm the worst i've failed okay split this it's just it's easy fix boom job done recombine that okay now now we do that so that totally didn't work amazing what have i done wrong it's not even a random value is it that's just all of them straight up oh is it yeah there's totally some random in there i'm guessing okay that was just weird rng i have no idea why that was anyway that's obviously way too much wobble let's set the wobble back down to something sensible like five okay so that now is the first stage of that but obviously we want to also add in this which is actually the easiest one of the three we just do random float and uh recombine bring it down here so uh we want minimum to be zero and maximum to be 360 because that's the full rotation and then just plug that into the rotation so now that should give us a totally random plan for each individual thing so in this case these are way too big for this little tiny pot so let's just go and bring the scale down loads probably max about 0.6 minimum 0.3 and that can give us a super quick way of populating our areas in unreal uh because obviously you can just grab them all and duplicate them all and very quickly bish bash brush job done however if i was to say go and make me this entire shelf that's still going to take ages so how do we do that well start by adding that root random so let's uh let's just duplicate this blueprint duplicate bluehost uh placement tray so rather than rather than placing them all by hand let's just uh let's bring in that tray you just uh we can just bring in drag and drop c3 drop it in that can be our route so now we have a c train here so we're now gonna have to basically use a uh a loop so you can say repeat this action over and over again um okay so let's just clean up our scene real quick get rid of all this random stuff some asset action i don't want to do that select taxes delete them all so the shortcut for selecting all static meshes is um shifty so you can just grab them or with shifting just delete them real quick just bring this back so finding contemporaries so far not so good i want to matter i should have i should add the soil i have a soil mesh for this too uh soil just drop this chop this in so what we need to do is create somehow create a script that places one in every single pot you could make a basically you could you could make like hand place a location in every single one but it gets a bit tiring so i'm gonna basically use the x and the y so let's say add a new variable location x change this to a transform and again make it a array and then duplicate that location y so to make this easier i'd usually just uh show 3d widget this way um it means that you can edit the stuff in uh in unreal itself so location x location y here we go add a thing so let's go why oh no y can be y can be this long one long ways like i'm deciding which position y should be rather than just saying y goes on the y axis uh okay which one is the y-axis oh that's confusing okay uh okay yeah so what can be this one so let's go 20 uh easiest way is just go one two three four one two three four five six seven eight so y has eight locations and then because i've already placed it it's not got the updated stuff so we can just set all of these so let's start with start with one so this wants to be yeah 20. let's try and fit it all on the screen so you can actually see what i'm doing why 20. and 13 eight and you can do the maths and work out roughly where each one should be but i like i like not doing the math because uh it hurts my brain but also if you do it like this you kind of you end up with a bit of variation in each one so it's like it's more random rather than being in a perfect like perfectly placed each time okay minus 15 minus 21. okay so we have the throw across and now we just need these so there's four so let's start with this where is me location but it doesn't matter which one you're using this is the i'm just because i'm just using this thing i'm going to delete it anyway so about nine point six three point six minus two and then finally minus eight okay so if i if i was just to delete this now replace it they should all be in a nice little grid yeah it looks about right so let's just ignore that for now because that's gonna be confusing so what we want to do is um how should we start so we want to basically because we're doing it in a grid we want to do a use a thing called a for loop for each loop and what this does is it basically says feed me an array just go again a starter x for each one of these loop it and you can grab the array element so we're actually going to use two or two of these straight plugs straight into each other because we do the rows and then the columns so for each y get y now basically all we're going to do is we're going to feed it into the location and that's all we really need to change so if we split this can we split this we can split this so this is the y so split location okay we're going to need to get a z from somewhere so let's just uh add another one let's just call it a flow uh said offset so this is going to be the basically the push up and down so like location okay make vector effects so it's just a three so i know it's an array i don't wanna know right change that back to the float oh we wanna turn the uh the x and y off why does it not let me change it save compile it's usually worth um saving before you compile because if you do like a script that says like loop every time and then there's some crazier stuff you might you might have fun with that or it might just like loop forever and you'll end up with something horrible and nasty so if you uh if you save beforehand it means you can just uh you can just kind of oh f4 and hopefully it works okay so i think that will work let's have a look yeah well that's quite a pretty intense so let's uh get the z offset so we want this to be much higher 10 maybe nope too high eight effects no that's still too high seven and that's perfect so uh yeah that will now give you random oh that's cool it doesn't random when you rotate anyway so that'll give you a random plant placement for each one obviously it doesn't take into account like size and clipping so you're going to end up with some weird stuff going on but once you've made a blueprint once you can just repurpose it over and over again for different things so having all of this just uh that really speeds up your workflow like placing all of these plants by hand would takes so long also i think i've done it wrong i think i might be repeating myself where is it let's uh let's just place these out slightly i think there might be multiple plants on each spot oh i've changed the scale i don't need to change the scale uh you are too tiny okay let's just go for 15. select one of these let's get rid of them all let's make things nice and speedy again you have lots of in the scene it's gonna start chugging stuff i know that seems okay i was just worried that i'd uh accidentally added it so because if i if i'd have messed up the for loop and it was repeating itself too many times then you end up with like multiple plants in the same spot and uh that would have explained why there was they were so dense but no that's good so oh yeah let's put that back uh what was on before nine 9.6 obviously with this because we've exposed the um the elements you can then say okay let's uh let's add some blanks in there or set the scale so 0.1 is the minimum 0.2 is 0.4 is the max let's get rid of those blanks so this then says gives you so much control like because there are like a per instance you can just say the one extra wants to be yeah the one extra one to be massive boom and uh yeah it just takes so much time and effort to go through an entire entire level and populate it without using this kind of stuff uh yeah and then of course if you you say oh actually i'm gonna make a fourth plant a fourth variation i need to go in and say plants yeah it's just this new plant and it will update every single one in my scene let's just grab another random plant uh plants let's go for a circling generic leafy saplings okay let's just add these into here save compile now all of the ones in the scene uh i see what i've done i've added it into the wrong blueprint anyway so all of these ones now have the leafy sapling this tiny one here which uh i was going to put in this let's just add it to this one as well just to be it's easier to see what's up uh let's go for a long sapling instead we go perfect first try okay anyway you get the idea so using a blueprint for this will yeah i'll speed up a load of things especially with plants because so they're so dense and you if you're making like an environment with plants you kind of need to put it's not like you're like oh i'll put one plant in there you're like i'll put like 780 plants because plants i mean maybe you only need to put one but sometimes you just end up with like if you're doing like a greenhouse or something you just end up with so many plants and uh i just found that i was spending my entire day just trying to trying to just fill up everything with plants and uh yeah and then i'd add another one and go oh great now i need to go delete all my plants and and it was just uh it was a total nightmare so doing it this way it just lets you uh it's like working a substance designer you want to update your update job done okay enough of enough about blueprint spawning of plants okay now that we've been uh talking about blueprints for ages i'm just gonna i'm gonna go into a little bit more depth about the materials and stuff i've used and basically improve it a little bit so i've used a yeah no material instance because material instances um they don't really save you anything in terms of performance like it doesn't instance your material it just uh means that it's more of like a working benefit if you uh if you've got 20 plants and you're like oh i wouldn't be cool if i added um this speckly noise thing into the shader and you're like ah now i have to go through and add it into 20 different shaders you're like i don't want to do that whereas if you use the material instance you know you just update one thing and everything's sawed so as you saw in the when i was whizzing through all this yeah i have a pretty basic setup currently so trying to fit everything on one screen so i start with you know i have my substance painter outputs which i've just labeled as the basic outputs going into all of this stuff the only real so there's two things i've already done here one was i rather than using a metalness mask i'm using like a veins mask so let's open up this material so in your in your mask channel usually you have like your so your roughness in your green you know your ambient occlusion and your red and then huh that wasn't what i was expecting it but anyway so you have your uh final one in the blue so usually your metalness or something so i've switched that to uh veins the subsurface mask which yeah so i'm then calling in multiple places but i'm also using it because uh so i was trying to debate whether to use a two-sided basically two-sided geometry and have a different texture for each site but the end i decided to use a two-sided material and unreal there's a there's a node called the two-sided sign and you probably spotted me testing that in in the you know in the quick whiz through but all it does is it says like one if one side i didn't rename it that's why i didn't then 0 on the other so if i just slam that in here that'll go into where's that going into yeah base color so yeah i'll make one side red one side green okay it's gonna see you can see in the preview but it's compiling stuff yeah it takes ages to compile my pc is really slow so pretty annoying when it compares so your yeah the like the top face is red and then the under face is green so all i'm doing here with this is i'm using uh i'm basically taking the diffuse and modifying it slightly i think that was always plugged in so in this case i'm desaturating it multiplying it by uh a little bit of a blue tint and then oh yeah i was trying some stuff here that didn't work um and then basically adding in some vein so i'm multiplying using that vein mask from there for the subsurface so i'm multiplying the subsurface by color and then just combining that into the into my texture so it basically gives like a a little bit of a variation on the top and bottom so it's nothing not you know nothing major nothing extreme same with the the specular i've reduced the spec i mean it's probably not it's not it's not accurate like pbr accurate but at the end of the day i'm going for what looks good so i found it was the um i was getting too much like specular shine on the bottom even though i like dulled the roughness or something so i just turned the roughness the specular down a little bit on the other side i mean it's not particularly noticeable but it's more it's noticeable when it's not there pretty much like you end up with just a sort of little bit of a difference and then uh for the shader i'm using two-sided foliage so i set some masked because we're you know masking it two-sided foliage setting it two-sided and then adding in a subsurface color all i really did here was i just uh i took the um the base color kind of desaturated it well actually i think i saturated a bit more for this one sometimes you find like when the light comes through you want it to be you want it to be super bright or sometimes you don't want it to be super bright i've totally mucked up the uh my texturing here i'll fix that in a sec anyway so when yeah because the substance the subsurface is just about in the room i think i've multiplied something weird in my pain so far i'll go back and fix that anyway so uh yeah you can use the desaturation mode if you set it to uh like negative you'll increase the saturation but if you set it to too high it'll do some funky stuff you know which which is cool sometimes but uh yeah i just i didn't really want any of that like zero is that was default and i thought i thought it looked a little bit a little bit too bright so i just set it to 0.5 like a bit of a cooler color tensing and then yeah this is just like a just i just don't multiply it straight power switch so i can say how how much subsurface i want like currently i'm using just one default value but because it's a master shader sometimes it'll be useful so anyway that is uh the the basic the most basic setup i think so what i want to do is uh i want to make it a little bit more fancy so i want to add in some wind probably some ability to control the variation so i use vertex color for this so man i wish i could spell vertex color so you have your red green blue and alpha usually i use red to control what's a mask large scale wind and when i say large scale wind i mean like the whole thing sort of shaking so when i'm doing this you kind of want to you know the the bass wants to be zero and you know the tops won't be one it's pretty much just like a straight nice gradient from top to bottom let's go let's just open up the vertex painting mode let's go red channel pain in red wonderful right i will fix that broken stuff and i will be right back what i'm yeah back uh it accidentally had a fill layer in my uh in the uh subsurface layer that was just like washing out the subsurface so yeah you can kind of see what i mean by the veins a bit better now if i bring that back so rather than being just flat we have the yeah it's not nothing fancy just the veins but yeah we can use that for it so anyway what was i doing uh i was adding wind so for vertex color so for the wins there are you know there are loads of different ways you can do win like some really fancy ones and some not very fancy ones i'm just gonna go with something simple because you know there's no point over complicating stuff if you uh if you end up making some crazy shaders you end up just kind of a lot of the time yeah it can look super cool but when you're trying to make like game ready environments you might just find that you are sort of it's like adding bloat to it over complicating stuff like the cost of the render cost versus the uh noise boom that's what i want versus the actual like visual increase in the time you're spending i you know i can just get a bit get a bit crazy anyway back to this so what i'm going to do for the wind is i'm going to take one of these it's just oh that's pretty neat so i'm going to take a uh just a noise texture and panic in world space so i think the green will do no it's good for red i might need to re-import that as a with a better compression but have a look so right channel just go up and multiply just uh that way i can remember is the um what channel is so because uh because it's kind of hard to like visualize what's happening i'm just gonna multiply it into the emissive color because otherwise uh like if we're doing if we're trying to do like a world position offset it's really really hard to see what's happening so currently this would be like a i'll apply it um yeah currently this is using the object tvs which isn't particularly what we want we want to you know wind is in like it's going to say wind space world space so uh we want to use the um either use the texture online world aligned screen coordinates what line texture yeah well the line texture coordinates you can yes you can use this default mode but it's kind of scary there's a lot of stuff going on so i'm generally a fan of just using my own stuff so so we want to go for world position which is absolute world position we want to multiply that because uh we don't have basically as a scale so well position scale let's go actually red and then because we have uh you know left right up down uh we have the three axis xyz we want to mask out one of them because texture coordinates is only 2d whereas the position is 3d so we got component mask yeah the orange at the g uh generally what i use for this because the uh the blue is like is the you know the up down in wall space so what are we doing wins and you don't get winds that goes like upwards i mean it obviously goes upwards but that wouldn't be my first choice it runs across there runs across the area if you know what i mean anyway so let's get back on with this so i mean as you can see in the preview that there's already some funky stuff going down but uh let's wait for its compile add a few so you can see okay so this is a you know our wind so we want to get that's way too big so we want to basically work out what is a good scale for this let's go a bit smaller okay so this is our oh is that a man this texture is terrible anyway so because this is a large scale winds i think that'll do for that so once you've got that we can just add a panna panning noise we basically with a panel we just take our coordinates and you know just it's like adding the world's time to it so let's just use a speed red speed so obviously zero is going to be very very well ver zero is nothing it will not work having it as a parameter means we can update it at real time so we can tweak it as we need so i'm actually going to add a frac in here which is probably not a node you've heard of but basically all it does is it removes everything but the decimal point so oh that's really fast there we go perfect so as you know in the uv score coordinates you can think of it as a zero to one and then if you offset it by you know if you offset it by 20 it's like will be exactly the same so like because it's a whole number so 0.1 across is the same as 0 28.01 and if you keep adding like gradually bigger number you know the math gets a little bit slower but also say you then left this game running overnight you might find that the number gets so big that the uv accuracy starts decreasing which is a bit weird that i don't and i don't really understand why it does that but adding in a frac is basically like deleting the junk from the number the stuff we don't need and it will reset so zero point every time it gets to one it will reset as 0.1 or 0.0 i think that was probably the worst explanation ever but uh it's kind of just adding like a little safe reset and there's totally a seam in this let's open photoshop let's just make a bad texture photoshop oh no what's it going to open with usually it restores the last thing i had open it's just usually some like stupid photoshop meme oh spoilers so new scene let's go let's let's go for a big texture we've all lost a variation in this 2k 2048 this is always hmm should i add clouds guys will do right in the clouds no i want to do something in design do i not have designer installed this could be a end of the road ah i don't have to yeah i reinstalled windows recently so i control okay fine this will do there's more i just couldn't be bothered to because if you uh if you if i do a blur it feels a blur gaussian blur it will add a seam it's pretty easy to fix i mean you you can do it like if you uh oh whatever i don't care so if you uh basically if i made it small and then so it blurred the edges as well so if i tiled it it would then and then until there it would blur it correctly but this total effort recent bluehost noise sort of tga it's not very efficient usually i would uh try and add some other random noises into it and compress it but like like the one i have whereas uh three different noises in one texture noise set to just a grey scale turn off this rgb i'll just slam that in there save see if this looks better when it compares i have to rebalance the the scale and stuff again not making full use of the range save tga noise reimport yeah cool that's way better i always doing the other texture anyway so we're going to use this as a world position offset not a oh i thought i unplugged something with red whoop intense intensity so we're going to use this as a with the wobbly one what have i done okay i am the best of this so well position offset obviously you can make this way more complicated like if you uh add multiple layers of noise multiply them together it generally will look a lot better but i don't want to eat up too much time so uh perfection so now that we have that that's obviously not what we want so we need to mask this in some kind of way uh so this is where the vertex coloring is going to come into into play so let's just uh as i said this is going to be the red channel so what i'm going to do is i'm going to go back to maya so here's our mesh what i want to do is i want to color it let's grab a plane well it's tiny so i use i kind of want to vertex color this in so we have like zero at the bottom and one at the top if i go to one to zero in the red one being red so i kind of want to do something like this but uh obviously if i was to go and try and paint this by hands you'd end up with like lots of weird blotches and stuff so what i'm actually gonna do is i'm gonna i'm gonna combine all these it will make it a little bit easier to control and then i'm actually literally just going to use this plane so in maya there's a thing called uh transfer attributes now you basically you select free once you say this plane i would like to transfer to this plan mesh transfer attributes hit the magic little box so we're going to do color sets current and then we're going to do that in world space you can also do a new v space which uh can be really really useful i'll uh i'll show you a bit on that later but yeah for now we're just going to use a workplace and then search method this is like how it's going to sample and stuff how it searches uh you can do it closest to normal but generally i find that doesn't work so i just use closest to point just try each way and yeah that just literally just doesn't like it's so easy saves so much time you can also it doesn't have to be a plane you can you can use like a kind of like a proxy type mesh and then because it's live you can you can just keep updating stuff and it's yeah real easy because it's maya at some point you'll probably run into a having some weird history related issues so you kind of need to you might need to just reset but yeah you can just keep editing this and uh controlling your strengths now i'm quite worried about the um because i have the overlap there i feel like it's going to probably start jumping into each other but anyway let's give that a go delete history delete a little plain file export this so that's a number one yeah it's compiled so let's re-import that when we uh we need to make sure that it replaces the vertex color otherwise you'll not get anything so now that's being controlled by that okay i'm actually going to fix this a little bit this looks crazy is anything so we want to slow it down a little bit and turn the intensity down i always say a little bit i mean like a lot let's keep it keeping things subtle as uh is the way forward let's make this a little bit bigger a little bit slower cool so that is the um you know first let's make this nice and neat so red red channel opposition offset so that's our first level of wind so the next level is we want the uh the macro wings so we want this to be our green channel like i was saying earlier i've always put green in there and and then uh to combine these we just want to add them together drag across now obviously we don't have anything in our green channel yet so i'll probably do something with so i'm going back to maya and we're going to make a green channel so we're actually going to use uh a second uv set for this because we already have a red and we don't want to we don't want to mess with that so if we you know if we do something kind of crazy or red yeah we just don't want to we don't want to do anything anything funky so do if we do it like this we won't have any issues and we can just combine them together later i'm actually gonna duplicate it as well because uh i'm always terrified that i'm gonna break everything so as i was saying earlier we can do this in um the uv space so i'm gonna basically i kind of want let's go so i want something a bit like oh green so that they saw the tips of the leaves and then down here will be black so i mean you can go through and paint them all but obviously with more care and effort than that but it takes a lot of time if you have a really complex asset so so you have like a tree with hundreds of leaves it will uh you know you'll be there forever trying to do this so i'm gonna do the exact same way as before except using the uvs because we're editing the uvs crown uv create a new uv set um now let's make the uh basically make up plane same as before except this time it actually doesn't matter where it is because we're using uvs for it so better black so we want the these uvs to be a nice green ones so if we were to do that now it would be a bit a bit odd like because everything nothing aligns so how are we going to do this so what we want to do check runner so yeah the stuff we don't want to move so we don't want this to move let's get rid of that move it to the other side and we kind of want all these to be about the same size really so if we uh if we're to do that now we'll get a very so as i said uv space you know i'll kind of do what we want but oh and you can still control it like this but i want a little bit more fidelity than that like that's just going straight down the middle so what i'm gonna do is i'm gonna kind of edit the uvs a little bit so newbies if you kind of make it match a little bit it will you know pull up a bit better so i need to be on vertex mode it just gives us it just gives us the control we need and yeah just delete the history as always so then once you've done that you can uh you know get rid of the second uv channel and then we basically need to combine these two layers so to do that we want to just blend them but instead of doing like an overlay as they're on separate things you can just add them together just blend delete history uh okay so now we want to export this number one and then re-import and it crashed again amazing this is honestly this is what it takes me so long to get anything done it crashes so often that's probably because i'm recording stuff so as soon as that crashed and unreal is closed i thought i'd uh quickly take the opportunity to do the verse explaining for the other two plants uh as you can see it's like super fast to do it like this uh it took me seven minutes to paint both of them uh and that was while recording and doing some weird stuff but um yeah because uh because of the way it works it's really easy to reuse the same pieces so for example you can control all the leaves at once and you know do the green with like a on every plant all at once or you know you make your the red for the proxy mesh for the red and then just use that same one for every single plant with only a tiny bit of variation and yeah it's super quick super easy and uh will save you a ton of time back to the shader so for some reason i can't show you an unreal if i preview uh the vertex colors my my unreal just crashes and uh for some reason it does that with everything so oh well i'll uh someday i'll work out what that is but yeah not today so what i've done since then is uh is i rebalanced the scales a bit and added a subtract in here because uh the texture i provided is a zero to one it means you'll always be pushing in a positive direction so because i wanted it to bob back and forth i just put a subtract subtract 0.5 and that pushes it down to be a yeah a plus a minus in each direction kind of just shifts the center point and uh yeah so that just uses the exact same and yeah you can just play with the values get it to what you want i'm not really gonna go into too much steps with this because usually i would use two or maybe three noises tiling over each other but it's just a bit confusing really but as you can see because it's wheel space the whole thing bobs together and you have your large scale wind on your small scale winds so the large scale is the red we did which is controlled here so i push up really strong so this is kind of like a global wind type thing which is a bit a bit big for me i mean a bit small so it's it's a little bit better slow it down a bit there's a point with zero right and obviously that's pushing away too much so let's just go for like two so this is that yeah the large the large wind like i was talking about and then around the edges the green is just the uh you know small scale micro wobbles which uh it's just a bit of break up let's make it a little bigger let's go four this wants to be a bit a bit faster as well obviously that looks awful because it's really strong but zero point nope that's nine zero point four so yeah let me turn the first one down again it's just to try and add a little bit of movement and life into a scene okay now that we've uh now that we've covered all the sort of fundamental stuff i will um i'm just gonna make another example a little bit more complicated and uh i'll show you a few a few ways of going through stuff so in this scene we uh we already have the i already have my leaves which i've made so i made these ones from an atlas and they're they're quite a bit lower poly than the last plant because i want a more sort of bushy type thing so rather than spending lots of pollies on a single leaf i'm going to use lots of not to leave so we we want to start off with uh what let's just get rid of all the vertices so we just have one i don't know what's going on okay there we go snapped it to zero so i have uh the vote on zero and using just e you can extrude out of the vert so doing this i'm gonna start off making a kind of basic branch shape and then you can just grab any vert and branch off it you can also subdivide to grab extra ones obviously you make sure you keep rotating the camera otherwise you end up with something super flat and then you can just use the soft select to move and rotate things which gives you a lot of uh a lot of options so then also you can bevel the perverts so you just kind of want to keep it simple split a load of stuff and keep going from here the uh the topology of this isn't overly important because uh doing it this way it will basically it doesn't give nice results off the bat so you have to remesh it anyway so if i'm going to remesh it then there's no point in really caring about it at this point so yeah that'll probably do so once we've got a a couple of verts in a nice little array we want to add a skin modifier and that makes some horrible crazy mess so what we do is we hit ctrl a with in edit mode and then you can you can basically scale each individual verb so using uh yeah press a just to select all of the verts then yeah ctrl a to scale the verts this again works with soft select mode so if you wanted to start with a chunkier base and you want to kind of pinch off the the tips so i kind of want to jump in and out of in and out of uh soft select which is just uh oh on the keyboard if you've not used it during this you can still you know you can start things you can still put bevels on that but the more geometry you have the kind of a little bit it gets a little bit messy to deal with so i would um yeah try and keep it as simple as you can so once you have this kind of shape if i um turn on the wireframe mode you can see it's not particularly nice um you can either you can clean it up by hand you can process it yourself or you can try and do some modifiers or something like maybe using the um decimate to click clean up or yeah some subdivisions or oh i generally don't bother with any of that and just do it in zbrush if i was uh trying to be super efficient with it i would clean it up by hand uh you get a little more control whether some stuff is but um when i'm i'm just trying to do something quick i'll yeah as i said i do it in zbrush and i basically subdivide it and then just use the um the z remesher uh occasionally you get like bits where it doesn't see remesh nicely so you can if you go to the deformations tab and use the inflate you can basically thicken it all then zero mesh it and then push it back using the reverse of the inflate um yeah because when you get like really thin bits sometimes like it sometimes it misses out so you can just yeah make it thicker it will do it and then make it thin again once you've gotten your your plant you can basically start placing the leaves so you want this on face select and then you can basically just drag it out and it'll snap to faces and you can add them like this um but i'm actually gonna before i get onto that i'm just gonna because i'm going to use uh i'm gonna use the cloth sim for this again so before we start duplicating stuff we want to make sure that the uh the weights are all set up so as you can see i've already set these up so in this one too yeah white paint still and it's also worth setting up the cloth before you start duplicating everything because if you um i mean you can join all the pieces and do it later it's intel well it's entirely up to you you know what no i'm gonna do it later i'm gonna i'm gonna combine them all and then just sim them all in one piece like that so when you with this you just kind of wanna be placing them along the along the branches or wherever you want it i mean these are actually tomato plant leaves and this is definitely not what a tomato plant grows like so before you call me out on my crazy shenanigans but um yeah so you start by just making sure you have all of them placed [Music] and then once you've uh once you've done a first pass you can then just start duplicating them around try and keep them quite like flat yeah you know like you don't really want to why is that there we go so you wanna because if you end up like with weird twists and stuff you know it's just gonna look weird like plants don't twist like that so you kind of want these to be reasonably reasonably like sensible you might also find things don't quite like snap up but most the time no one will ever notice so i wouldn't wouldn't worry too much about it i'm obviously trying to keep things nice and sensible but yeah it's not too much of a concern if things are a bit things are a bit hit and miss especially if you're doing like an entire environment like you can get away with a lot with plants anyway i'm going to speed this up and yeah i'll chat so that'll be enough for this so uh now that we've got all the leaves placed we just kind of want to combine everything apart from apart from the uh the base the stem or the trunk or whatever you're doing so grab them all ctrl j another one piece you can just add the cloth cloth physics make sure you add the pin group so there's a shape pin group pen now if we cloths in that they will go all floppy obviously that's not all we really have to unless we're doing some kind of dead plant so you want to pump up the stiffness so in the bending so that's 15. you can also reduce the weight which is kind of like a reverse gravity type effect it makes a little bit more floaty so maybe too much let's try that again i don't like that leaf actually you can still go back in and edit things i'm just going to edit mode not still too stiff let's try five let's set the uh set the weight up a little bit maybe that was lowering it perfect so that gives you a lot more gives you a lot more variation than if you'd have individually rounded each leaf and it's just so much quicker so now we've done that let's just uh export both these things export as fbx i mean that's basically all there is to it it's yeah it's not too different from normal modeling just a few different steps here and there oh he's just setting this one up to use the verdict colors like we discussed earlier but uh we're on the topic of prepping for other meshes i'm just going to quickly talk about using custom normals with vegetation and when or where to use it it's a was the thing that confused me for quite a while but um pretty much it's a really simple explanation once you realize what it's about and if i make a sphere here so to kind of represent this plant so if we have these two things the rough shape you know they don't look the shading doesn't look too different but as soon as we start introducing a light so create lights if we add in a directional light and turn on lighting mode in maya it's uh really really easy to see let's just unlock the normals so when you think about a bush like the top is light and the bottom is dark whereas if you use individual leaves they all shade in their own particular way so generally you get like a rough thing being it's not too bad but there are a lot of issues where you get bits on the top being shaded or just kind of things that just aren't quite there so what you can do is you can pretty much take a object and use the um [Music] again the transfer attributes out of this tool rather than transferring the attributes you're transferring the vertex normal and if you imply in world space to lead history and get rid of this egg you will notice that the uh the lighting it shades in the same way as the egg and this will give you much softer kind of readable plants so when you're making a stylized game this kind of thing is perfect but uh you know it's a thing that you need to decide if it's appropriate for your level usually i will make my plan and then i'll duplicate it and import it into unreal and be like i don't know if it looks better or not and you know whether i need to do or not generally i don't do this because i haven't really found the need but uh it is a very very useful technique and will really really help certain certain plants well you've made it to the end sorry it was so long and windy um yeah there's a lot of different little things i wanted to say so um yeah i i hope it was useful i hope it was informative and yeah thanks for watching and uh i'll see you around [Music] you
Info
Channel: Stylized Station
Views: 68,625
Rating: undefined out of 5
Keywords: blender grass tutorial, substance painter grass, unreal engine grass, unreal engine grass tutorial, Video Game Grass, Grass 3d Model, grass unreal engine, 3d grass tutorial, blender grass, 3d grass, stylized grass ue4, blender grass for games, grass UE4, Grass UE4 tutorial, stylized grass tutorial, grass tutorial, how to create vegatation, real time plants
Id: ek9kK6zmMf8
Channel Id: undefined
Length: 121min 25sec (7285 seconds)
Published: Mon Aug 10 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.