Before I get on to the material settings for the grass I’m going to show how I used similar techniques as in part 1 to make shorter grass. This time, I made 5 new individual blades, and made them a lot smaller, more random and also gave them a texture.
I made 3 lengths of grass, the longer ones had taller, less curved, blades. These were then scattered about 1000 times onto a 500mm dia. circle using advanced painter in randomize mode. The next step was to attach all blades into one editable mesh/poly and reset the xform, this seems to be vitally important before exporting it as a vrayproxy. Before I did this, the vrayproxy was using huge amounts of memory when rendering.

Short grass

Longer grass - some stats: approx 8000 polys per proxy x 1000 proxies = approx 8 million total polygons. 3dsmax uses about 2 gig memory for this scene and each view rendered pretty quickly considering I had vrayfog and depth of field on.
Note: I use vrayscatter (a commercial plugin but well worth the money) to scatter the proxies. There are lots of tutorials for it here. You can also use scatter by Peter Watje, advanced painter, Forest by Itoosoft, Groundwiz Planter or 3dsmax particles.
Material set up:
The main material for the grass is a multi-sub object with 3 materials within it. Each of the original 5 blades of grass were assigned one of these material IDs at random before they were scattered. Each material is a vraymaterial within a vray2sidedmaterial. Hopefully the screenshots are enough to describe the set up. The three sub materials are all essentially the same, and use the same Bitmap, but use a color correction map to subtly shift the colour (hue). The vray2sided material gives the SSS effect, and is the best option for thin geometry (no thickness) like grass and tree leaves.
You can optionally try turning off ‘trace reflections’ to try speeding things up. This means the grass will still pick up highlights from the sun, but won’t pick up proper reflections, like the colour of the sky. I found the speed increase to be hardly noticeable in my tests, and it just didn’t look as good.
UPDATE:
There’s nothing special about my render settings or scene set up for this scene, just a vraysun & sky, vrayphysical camera and my usual colour mapping settings. To make the renders look a bit more interesting I decided to play a bit with sun and shadow, and also back lit the grass so that the transparent effect was evident. As you can see from the screengrab below, I have the sun coming from slightly behind the brick wall, and it is also very low in the sky. When experimenting with materials it’s very important to set your scene up to mimic an effect you would see in the real world.
If you are interested in downloading an example scene, please visit the tutorials section of vray.info and navigate to the 2nd part of my grass tutorial.
Tags: grass, vray, vrayscatter






That’s really beautiful peter !
Well done, beautiful results.Thanks for sharing material details.
Horribly, horribly talented.
Remarkably realistic looking grass. Thank you very much for sharing these tests with us.
Awesome Information man…….
woooww… this is great man.. thanks.
excellent Peter…!
Excuse me for this expression but… ¡My balls are on the ground! Awesome, man! The beautifullest grass I’ve ever seen in my life.
awesome tutorial, thanks very much.
Hi Peter. Fantastic stuff. But I wonder how well this approach would scale when used in archviz. I mean, you’d be talking billions of polys for an average-scale exterior. Have you tried much larger environments?
hey, peter, sorry, but that is a real grass….
no living human could create something of such a standard (-:
outstanding, PG. what’s the next topic you will cover for us on the ‘elite tutorials’?
keep up the good work, mate.
Absolutely fantastic, thanx for inspiring materials my friend, from interior light settings to this sweeet grass!!
Evermotionist..
thanks for sharing
Fantastic work and really usefull for beginners like me. Thank you for sharing !!!
Great Tutorial… Thanks!
amazing tutorial, but i only need to know, how you can do the model of grass ? you know make the grass leaf by leaf ?
some guide to follow to practice to do a nice leaf of grass ?
congratulation ?
Pete, I’m flabbergasted. Told everyone here at the office you gonna be CGI world champion by 2010!!
Really amazing with great and realistic result.
its simply magnificient…good work and thx
good work yar
gilberto, the grass blades are a plane with 7 or 8 segments, converted into an editable poly and the vertices moved until it looks like grass.. like this:
“The next step was to attach all blades into one editable mesh/poly and reset the xform, this seems to be vitally important before exporting it as a vrayproxy.”
What do you mean “and reset the xform” ?
THX Honzic
That’s OK. I find it in another forum.
honzic, select the object, click on the utility panel > reset xform, then I normally go back to the edit panel, right click the stack and collapse to editable mesh
Another thing Peter (dunno if you saw my earlier msg), if you’re grass object is not too heavy, which is the case here, wouldn’t it make more sense to use instanced geometry rather than Vrayproxies to render. It would probably render faster and you could paint your lawn with painter instead of Vrayscatter. Or am I telling nonsense?
Great Tutorial… Thanks!
wooooooooooooooow realy amazing.. i’m from indonesia… thank you very much…
Thanks for the great inspiration, Peter! Awesome work, I cannot wait to try it while i [hopefully] wait for more work to come in! Thanks!
Hey Peter ! Thank you for this great tutorial ! I want to ask you if there is any chance for releasing one of your testscenes to public, it will help me really much because i cant get the lighting and material right. Thank you in advance.
This is the most realistic CG grass out of all I’ve seen so far. Great work!!!!!
Hi Peter,
at first thx for this great tutorial it looks really amazing. But my problem ist I have just 1 square meter of your grass and it has rendered nearly 12 hours. What could I have done wrong? The Vrayscatter count is even at 100.
Hey Peter,
the point delte x-form is much more important than I thought
now my render time is about 1-2 min
Amazing grass tut. The best one I have seen so far! Only problem is that I work with Maya. Is there anyway you can explain on how to set this up using Maya? Thanks!
Very Nice and realistic.
Thanks Dear.
What rendering parameters did you use?, did you use vray’s physical camera ? I would like to see a 3ª part of this tutorial
a part 3 tutorial is a good idea… will see what I can do
Bertrand wrote - “Another thing Peter (dunno if you saw my earlier msg), if you’re grass object is not too heavy, which is the case here, wouldn’t it make more sense to use instanced geometry rather than Vrayproxies to render. It would probably render faster and you could paint your lawn with painter instead of Vrayscatter. Or am I telling nonsense?”
From my experience doing this the way you describe bring screen refresh in 3dsmax down on it’s knees - using the advanced painter that is. Using VRayScatter the model fly’s on screen… this has nothing to do with the render times though.
which material image i am suppose to apply? you said there are 3 different 2 sided materials you applied. but i do not know which image you put in defuse slot..
thanks
hello!! please somebody post more information about how to use adavanced painter on this! im lost!! thanks!
you have to take a look at this proxi painter http://www.3rdpole.com/
it has proxy collision
I’m not one to usually leave a comment on things, but OMG, this deserves a comment, BIG TIME. That render is OMG so real. It’s almost like you’re actually there. Thank you for this awesome tutorial. I haven’t finished it yet, but I’m quite eager to see how it will turn out when done.
Absolutly beautiful work! Any chance we can see your camera / lighting / render setups for the above images. Can’t seem to get the look quite right. Would greatly appreciate it! Thanks!
I have found by doing this tutorial you can actually use advanced painter to paint the vray proxies instead of using the scatter. just import your vray mesh as described then add the proxy to the painter when selected and just paint away. it will paint them as proxies and you can still switch between preview from file or bounding box for each proxy that is painted. I only found this out because I don’t have vray scatter, so i had to think of a different way.
also, peter or anyone, i noticed in the first part you painted the grass on a square, this time you used a circle, what is the reason for that? is it just preference or does it make scattering easier?
@don, thought the circle might be more natural, doesnt make a huge difference though.
@jay lew - I have updated the tutorial to show my scene setup.
@olhorobot thanks for the link
Peter,
How do you deal with patch collision? I presume they should overlap a tad, but i can’t tell if you made the grass thinner on the edge of the patch.
The grass is a little bit scaled down round the edges so it blends in better. Vrayscatter has a collision parameter so you don’t double up too much where its not needed.
UPDATE:
I have added a section about the scene set up and a max 2009 file to download.
When you try to open the scene it’s missing file (mediumgrass.vrmesh). Any chance you could upload that also?