Maya 2018: Create a 620,000,000 Poly Forest in 10 Minutes

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello my name is Marcel Dionne I'm technical team lead in North America for Remini and I'll be going through an Arnold workflow exercise the following topics is what I'll cover in this exercise let's look at a couple of pictures here so this is the first one it's about 600 million Polly's in the scene that are being rendered using stand-ins with a little bit of variation in scale translation rotation another example where you can kind of see the separation between the trees and the shadow casting from tree to tree through the actual alpha textures it's a little far away for that but it's a top view as you were if you were to fly over a forest like this a close-up of the shadow casting which is actually casting shadows through the alphas so in each individual pine needle actually has a shadow representation somewhere and then the last one which is the one that I'll actually create here as part of the exercise so we'll have a surface that we place these paintings on and then randomize them across that surface so with that let's jump into the software and look at what we have these are the three trees that I'll use to do this and you can see that all the textures for the pine needles are sitting on cards usually with you when you're dealing with someone like this you not only have the Alpha problem but you also have a sorting problem and so we introduced in one of the fairly recent releases we introduced the Alpha cut transparency modes under Hardware render settings viewport to bono settings you can set this to alpha cut and you can see that it now starts to clip correctly and it also sorts the needles correctly so you get a proper sorting from front to back that doesn't really interfere with itself so with that what I'd like to do is throw on the light real quick so we'll create a light and if I select physical sky it actually creates a sky dome with a physical sky texture associated with it so that dome sits around my scene if I want it to kind of not be there so that I don't accidentally pick it or of things that are black don't really disappear against the the backdrop you can go to viewport and set the sky radius to zero the light will still function exactly the way it did before so with that let's jump into the hypershade window real quick and look at the textures that we have associated with these trees and in this case we get these three right here these are the color textures that I'm going to be manipulating or randomizing somewhat but before I do I want to go ahead and render this out so that we can actually dock the ARV the Arnold render view into the hypershade window and with the two dock together we can maximize this and use this UI to do all of the work that we need until we start rendering a forest so let's stop this for a second we have the three shaders we have the three trees and if I were to go in and actually select the geometry you can see the red outline around the shader tells you which shaders associated with the tree that I just baked so the one in the middle is the shader in the middle so that's the one I want to start with and if I select the texture you can see that the color offset for this is that green that I see on the tree so what I'm going to do is I'm going to go ahead and sample that color to essentially store it so I can always go back to it so with that I can then map that with a color jitter node by selecting the Arnold tab there and then start punching in the name and at some point will actually filter down to the actual node and if I load that node you can see that in this case that node has an input of white which makes that tree makes all the pine needles render white we can of course go in here and apply a texture like a volume texture to it and that too would be a good way to introduce noise but what I'm going to do is just use the color jitter node otherwise you'd have to have more nodes feeding into that color jitter node so let's let's drop down or let's actually load the original green color that we had on the tree so we're basically back to the original configuration in terms of color if I don't go in and maybe say well let's maybe lighten that up a bit you can see how that lightens up or maybe go back to the original color or close the original color you can go to object and you can modify a color gain or a variance in ink color gain maybe set this black point one a fairly low value and then maybe space out your you men and your you max values to introduce a little bit of color variation so you can see that in this case if I get a little closer you know we get cooler patches of pine needles and warmer patches of pine needles and then of course if you wanted to go in you could take the source color to which those you variations are applied and maybe shifted over more towards the warmer part of the spectrum and you can see that now we get some Browns involved as well so that's that's a very simple easy way to vary the color within your trees and the overall impression of each of these trees so let's go ahead and pick the one on the right and that's the shader right here if I stop my IP our render here real quick I'm going to go ahead and do a ctrl-c ctrl-v I can unselect that shader that texture that I want to apply this to maybe drag and drop this in we're going to get yeah we're going to get the same result here on that tree and if I open this up we might want to change some of the values here having a go to maybe something lighter also maybe something under object we can make this gain value a little bit different we can also shift the you you can see that this is becoming a little more red or maybe I want to shift it more towards the blue part of the spectrum something like that so you can vary this however you need to once you have enough variations between the trees which later on is going to mean that when the trees start mixing you get enough variation and the force which really helps create a sense of depth and distance alright so with this obviously you can create presets for this as well if you want to go ahead and store some presets for this particular node the third tree I'm going to leave it alone we'll leave it exactly as the original color so with that we can go ahead and tear this back off maybe we'll stop the renderer here we can close it we can close the hypershade window and what we need to do is actually export these trees as ass files as files so with the first one selected let's go to Arnold stand-in and export a little export this as 3 1 and we'll overwrite that and then we'll go ahead and do the same thing to the second one we'll export this as tree number 2 and then with the third one let's go ahead and export this but let's open the dialog here first and one of the things that you do want to make sure is turn on this export bounding box and so what that will do is it will export the data as file and then it will also export a file called dot AFF TOC and that's a representation of the bounding box so that when you read into that asphalt the bounding box is drawn very quickly as well if you don't have that if you don't have that export bounding box tornami export that be that azz file and then bring them back in every time entry draws a new bandung box it has to take a little bit of time so if you have you know ten or twenty or so it's not that big a deal but if you have a billion then obviously that could be a huge problem so make sure that's turned on so we'll say export selection will export this s 303 and then we're going to start bringing them back in as stand-ins so we can go ahead and delete these now and then say create and load the first one create and load the second one and the third one you can see that as I'm doing this they also remember the world space positions these trees were sitting in so let's close this and we can expose a terrain across which we want to populate this so let's open up the or expose the the ground and with that we can turn this into a mash Network so the three selected I'm going to mash and open up create mash Network and create an instance Network which makes it faster as well and with that instance network selected we can go ahead and render this into a view so we can actually see trees look like now in this case we get three trees that are exactly the same and it's really because it's rendering ID number one so if I wanted to be able to randomize the ids between the three trees that are loaded into this and you can see that if you go to the waiter value it's that it's set to three if you go to distribute value it's set to three points so it automatically does that because only at three objects select it so in this case what I want to do is I want to assign an ID node and with that ID note I'm going to select random and they maybe modify the random seed value and when you select that you can render that out and you can see that now we get three different trees actually in this case two if you change the seed value again and we render that again you might get a different configuration of trees so it all depends on what your C value is set to so in this case you see that they move over as well right so this case you can see that I get one of each they all look good the shadow casting is correct it's accurate and all the detail is there so at this point what I'd like to do is maybe go in and associate this with this surface and then increase the number of repetitions that we get for each tree so let's let's make sure that we jump into the distribute node and select the mesh preset we can select that plane and drop that in as a input mesh and they'll show up on the mesh someplace and I can simply increase the number of points let's set that to a thousand so with that set to a thousand you can see that each of these trees are also oriented along the normal of where it sits depending where it sits on the surface so you want to turn off calculate rotation everything now points vertically and we also want to go in and maybe assign a random node so under a mash we can go back to the waiter and open or create a random node and with that random node we can now introduce random values for translate rotate scale so for random rotation I might want to punch in 360 and by setting it to 360 it automatically understood that I want to randomize between 0 and 360 for position maybe I want to randomize between 0 and 3 so I just give through this a little bit of a value you can see that increasing that value will increase the variation across translation Y and then the last thing I want to do here is maybe give it a little bit of a variation point three point four maybe for X and Z and for y we'll make a little bit bigger value will scale a little bit more in Y so once you're done with that we can then go back to the distribute node and maybe multiply that times 10 so we'll have ten thousand trees each tree is about 170,000 Poly's if I were to turn on the resolution gate here maybe drop this back a bit so we were fairly close to the trees in the front very fairly far away from the trees in the back we can then render this out to see what this looks like so you can see that as I'm doing this I'm starting to see the variation in the forest as well as the detail of all of the needles as well as the variation in rotation scale and translation so let's stop this for a second and then maybe go back and change the illumination by selecting the light and jumping into the physical sky texture so with that we can we might want to maybe warm it up a little bit by dropping this Sun in the sky to like eight nine ten degrees let's set it to eight degrees and then we'll rotate it around maybe 135 degrees so it comes in from the side more or less and then maybe increase the intensity for two value four or five maybe a little more intense so with this configuration you can see that we are starting to see cast shadows and we're starting to see some contrast in the dark and light areas in the forest and as it's rendering and revealing some of the detail that we want to see I might also want to go in and supply it with a little bit of a sky tint let's go a little bit of a cool tint there something like that and then rerender this you can see that the sky kind of cools off a little bit introduces more blue and that will also introduce more blue in the immune areas and of course you can also change the Sun tint as well as the Sun size and increasing the Sun size will soften the shadows as well so I'm going to let this render and kind of recap what we did we started off with three trees from a library and Nautilus library seek library and they all have also textures associated with it as well as as well as just a regular color and so we used a color jitter no to randomize the color for each of the trees and then did that for a couple of the trees left one alone and then we turned each of the trees or exported each of the trees if you will to a dead-ass file to import that again into a standing which will take advantage of all the optimization in optimizations in Arnold for standings it will make it render quicker it will respect all of your shaders textures etc they're called shading engines inside of the DES file and it will render at its full resolution so there are the performance and memory gains as well as the the interactivity that you get by sitting here and watching a forest render like this so that's pretty much it thank you very much
Info
Channel: My Oh Maya
Views: 146,273
Rating: undefined out of 5
Keywords: Maya, Autodesk, 3d, 3d modeling, 3d animation, M&E, demo, tutorial, MASH, Arnold, Instance, Instancing, tree, forest, trees, model, modeling
Id: j2WRTlW8_3s
Channel Id: undefined
Length: 14min 55sec (895 seconds)
Published: Mon Aug 21 2017
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.