|Creating Grass Land Using Pflow in 3dsmax |
Software: Autodesk 3dsmax
Author: Ranjit Menon.K
Author Website: http://www.3dmantra.com/
Hello friends .. I just love pflow and have used it in a lot of my projects. Here I would like to share with you a very easy method to create grass land in 3ds Max using pflow . It is somewhat similar to scatter, but more flexible than scatter and you can create your own variations easily. I will be using some operators here.
Shape Instance Operator
Shape Instance creates particles whose shape is based on a reference geometry object. The object's animation can be synchronized with particle events.
Position Object places particles on a set of reference objects.
Split Amount checks numerical particle property, and sends to the next event either a fraction of particles, or every Nth particle, or the first N particles, or all the particles after the N first.
1. First of all, let's start by creating a cone of sides: 6 radius1: .6 radius2: 0 and height: 40. A bend modifier should be applied to the cones. You can even go lesser on the sides if it gives the result you want. you can also create another cone bend in a different angle. Now we have a Cone01, Cone02 and a Plane01. You may name these to Grass1, Grass2,Terrain respectively since I strongly would advise you all to use naming conventions whenever possible, which can save you a lot of time. Using a cone gives you a three-dimensionality to the grass, instead of using a plane. Also create a plane with length: 200 Width: 300, Segments 12*12 and apply a noise modifier with the settings as shown below. Also apply a turbosmooth modifier to it.
2. Create a particle flow source. In the Main menubar - Create>Particle>particle flow source (Particle flow is an event driven particle system and it gives us more control over the particles than the ordinary particle systems in max which are non-event driven) Press 6 or select the pflow icon and go to the modify panel and click on the particle view button. You will get a window as shown below:
3. These are the default operators that you get in particle flow. We shall replace some of those with operators from the operators depot to get our desired result. I have marked in the image below where all operators have to be replaced with new ones. For example, the Position Icon operator will be replaced with the Position Object operator by left clicking and dragging the Position Object operator from the operators depot onto the Position Icon operator in event 01. You will see that a red line appears on top of the Position Icon operator, release your left mouse button then. Similarly, change the Shape Operator with Shape Instance operator.
4. First click on the Birth operator and change the emit stop to 0. Now all 200 particles will be emitted at once rather than one by one. Also give a particle amount of 1000 ( Depends on how much you need and how much area you need to cover).
5. Click on the Position Object operator, on the right side you can see its properties in the Emitter objects rollout. Click add and select the terrain. You will see that the name of the plane (Terrain) appears in the dialogue box there. See to it that the Lock On Emitter option is also ticked or else the particle will fly off when you play with the animation slider.
6. Change the Shape operator to Shape Instance operator, after that Click on the Shape Instance operator in the event and in the properties on the right side, click on the none button under particle geometry and select grass1. You can see that lots of ticks get scattered all over the plane. Click on the Display operator and in the type select Geometry which will reveal the grass mesh. You can also change the color to green or apply a material by adding a material dynamic operator
You can see that all of the grass blades are bent in different directions and some even go under the terrain. To rectify this problem, click on the Rotation operator and in its properties change the orientation matrix to world space. This aligns the particle according to the world axis and makes it stay perpendicular to the terrain.
7. This seems a bit unrealistic cause all grass are standing upright and steady like an army of soldiers smile so to break the monotony you can first click on event 01 and right click, select copy and paste it anywhere in the open space nearby - this will create another event 02. Delete the birth operator of event 02.
8. Add a Split Amount operator to the event 01 below the birth operator. Create a connection from the Split Amount to the event02. In Event02 select the shape instance and select grass2. Now you can see how much the scene has changed. Cool isn't it? You can even copy the Event 02 and create another Event 03 and add split amount to Event 02 and connect the Split Amount to Event03 and select another grass3 as object instance.
9. In the shape rollout of both Events, you can play with the size and variation to create your own realistic grass scatter.
10 . There are also some specialties about position object operator, select the position object operator and change the location from surface to vertices or edges... try it out and see the difference. There is another option below location called density by material, tick on it. It will be grayscale by default. Apply a checkered texture to the terrain and see what happens (you will have to move the animation slider a bit to see the result).
11. Drag a material dynamic operator into Event 01 open the material editor by pressing M and create a material for the grass select the material dynamic operator, which will reveal the operator properties on the right side. From the material editor, click on the material slot you created and drag it on top of the none button in the material dynamic property. A command will pop up which says instance or copy select instance and click OK cause whatever change you make in the material editor will be in sync with that of the material dynamic in the particle view. For the other events do the same. Variate the color of the grass material a bit, which will give you a more realistic look.
I hope this has been very much of an interesting and useful tutorial to you. THAT'S ALL FOLKS!