3D Snow

07 Jan 2012

3D SnowIn this 3ds Max tutorial we’re going to create a 3d snow scene. The focus will be the snowy hills, snow on the branches of the tree, and snow flakes flowing in the air. Additionally we’ll learn about using fog, simple lens effects, and creating soft shadows. I’m using 3ds Max 2010 but many older versions should work just as well.

This post is a collaboration with Nicholas Mamo who had the idea for a 3d snow scene and who contributed the Particle Flow / BlobMesh setup (Steps 9-14).

Step 1 Mental Ray Renderer

We’re going to render the scene with Mental Ray. By default 3ds Max uses the Scanline renderer so we have to change that. Change the renderer to the Mental Ray ( Rendering > Render Setup… > Common tab > Assign Renderer > Production > mental ray Renderer ).

Step 2 Basic Geometry for Snowy 3D Hills

Create a Plane ( Create panel > Geometry > Standard Primitives > Plane ) in the top viewport . Modify the Plane ( Make a selection > Modify panel ) according to the following parameters :

  • Length: 1350
  • Width: 1474
  • length Segs: 100
  • Width Segs: 100
  • Render Multipliers
    • Density: 4

Plane object in 3ds Max

( We need a dense (320k polygons) mesh because we’re going to deform it with the Noise modifier. )

Step 3 Snowy 3D Hills with the Noise Modifier

Add Noise modifier to the Plane ( Make a selection > Modify panel > Modifier List > Object-Space Modifiers > Noise ) and apply the following parameters:

  • Noise:
    • Seed: 5
    • Scale: 800
    • Fractal: YES
  • Strength
    • Z: 200

3D Snow hills

Step 4 Camera

Let’s prepare our 3D snow scene for the first rendering. Create a Target camera ( Create panel > Cameras > Target ) in the top viewport. Right-click on the Perspective view and press C in the keyboard to change it to the Camera view.

Next we’re going to move the objects. We’re moving them by entering precise coordinates. First select an object with the ‘Select and Move’ tool and then enter XYZ coordinates in the bottom of the screen (see the picture below ). Use the following coordinates to get exactly the same camera angle as in picture below:

  • Plane: 0,0,0
  • Camera: 283, -376, 73
  • Camera Target: -16, -224, 55

terrain in 3d Max

Step 5 Snow Material in 3ds Max

Now the geometry of the snowy hills is complete so let’s apply a material to it. Open Material Editor ( Press M in keyboard ). There are two different modes for the material editor: Compact and Slate. In this tutorial I’m using the Compact mode. You can change the mode in the ‘Modes’ menu inside Material Editor. So, let’s create the material. Click on the first material slot, and create the material:

  1. Select the plane and assign the material to it
  2. Diffuse and Ambient colors: White ( RGB 255, 255, 255 )
  3. Specular Level: 20
  4. Bump: Composite ( The Composite map is used to combine several maps together ). Bump Amount: 6
  5. Add Speckle map to the first layer of the Composite Map ( large scale details )Size: 10
  6. Add second layer to the Composite map. Change the blending mode to Addition and Opacity to 40. Add Speckle map to the second layer ( small scale details )Size: 5

Now the material for snowy hills is complete. If you want more variation, feel free to add additional bump layers to the composite map. We can’t see small bumps properly with Mental Ray’s default sampling settings so let’s increase them before test rendering: Go to the render setup and increase antialiasing quality by increasing Mental Ray’s sampling values ( Rendering > Render setup… > Renderer > Sampling Quality ):

  • Samples per pixel
    • Minimum: 4 ( If your rendering time increases too much, set this to 1 for now. )
    • Maximum: 64 (If your rendering time increases too much, set this to 16 for now.)
  • Filter Type: Mitchell ( For most scenes the Mitchell filter gives the best results. )

Snowy landscape

My rendering resolution is 700 x 394 pixels.

Step 6 Illumination

We’re going to create a strong light that illuminates the hill on the foreground. Create ‘mr Area Spot’ ( Create panel > Lights > Standard > mr Area Spot ) in the top viewport, position it according to the coordinates:

  • mr Area Spot: -617, -602, 692
  • mr Area Spot Target: -102, -291, 66

Apply the following settings to the mr are spot:

  • General Parameters
    • Shadows: ON
    • Shadows: Ray Traced Shadows
  • Intensity/Color/Attenuation
    • Multiplier: 1,2
  • Spotlight Parameters
    • Hotspot/Beam: 11,2
    • Falloff/Field: 16 ( Just big enough to cover the hill in the foreground )
  • Area Light Parameters
    • Type: RectangleHeight: 50 ( the higher the value, the softer the shadows )
    • Width: 50 ( the higher the value, the softer the shadows )
    • Samples
      • U: 10 ( higher quality shadows. Less grain. If your rendering time increases too much, set it to 5 for now. )
      • V: 10 ( higher quality shadows. Less grain. If your rendering time increases too much, set it to 5 for now. )

Render your scene to get the image below.

Soft shadows in 3ds Max

Step 7 Environment and Fog

Let’s change the background color and apply fog to make the scene more convincing. Change the background color to white:

  1. Open environment settings ( Rendering > Environment… )
  2. Change background color to white ( Common Parameters > Background: > Color: )

Go to the Atmosphere settings ( Rendering > Environment… > Atmosphere ) and add fog to the scene:

  1. Click ‘Add…’ button, select ‘Fog’ from the list and click ‘OK’.
  2. Change the fog color to light gray (RGB 210,210,210)

Before we render, let’s adjust environment ranges. Select the camera, go to the modify panel, and apply the following settings:

  • Parameters
    • Environment Ranges
      • Show: YES
      • Near Range: 460
      • Far Range: 1200

Now we see the environment range in the viewport. It’s the area between beige and brown line. The fog will appear between these lines. By default the density of the fog is 0% at the near range and 100% at the far range. Adjust the values or camera position if necessary.

Environmental ranges

Render the camera view to see the fog! We didn’t even have to illuminate the background hills because the fog makes them visible.

Fog in 3d max

Step 8 Modeling the Tree

At the moment we’re missing a point of interest. What we have is just a landscape. Let’s create a simple tree on top of the hill.

  1. Activate the Line tool ( Create panel > Shapes > Splines > Line ) and create a random line in the front viewport ( see the picture below ). This will be the trunk of the tree. I won’t give you the exact coordinates. Instead just place the vertices to create the kind of tree you want. Remember to move the vertices in other viewports as well to avoid creating a flat tree.
  2. Activate the Circle tool ( Create panel > Shapes > Splines > Circle ) and create a circle in the front viewport ( see the picture below ).
  3. Go to the modify panel and apply the following settings to the circle:Radius: 5
  4. Compare the proportions of the Line and Circle. Try to match the second screenshot in the picture below. Move the vertices of the Line to make it smaller or larger if necessary.Next we’re going to create a Loft object out of the line and circle:
  5. Select the line object we just created
  6. Create a Loft object ( Create panel > Geometry > Compound objects > Loft )
  7. Activate ‘Get Shape’ button and click on the circle we just createdNow let’s modify the loft object:
  8. Go to the modify panel while the loft object is still selected.
  9. Apply the following settings:Skin Parameters > Options > Shape Steps: 2

    Skin Parameters > Options > Path Steps: 0

  10. Go to the Deformations rollout and click ‘Scale’ button
  11. Adjust the Scale deformation curve to match the picture below. ( We scale the base of the trunk to 300% and the end of the trunk to 10% )

Tree modeling

Now the trunk of the tree is complete. Use the same technique to create 2-3 branches to the tree. Create a new line for each branch, but use the same circle for them all. It’s a good idea to save all the lines and the circle so we can easily modify the branches later. You can, for example, move the vertices in the line and the loft object adjusts automatically. When the branches are complete, select all the loft objects and make a group out of them. ( Select objects > Group > Group ).

Finally apply a black material ( just black color, nothing special) for tree, position it on top of the hill, and render the image.

Cartoony 3d tree

The tree looks a little cartoony. If you want more realism, you should add some curved segments to the lines and probably some variation to their scale deformation curves.

Step 9 Creating Particle Flow

Next we’re going to improve the scene by using Particle Flow to add some snow on the branches. This setup was contributed by our first guest writer Nicholas Mamo.

  1. Create a Particle Flow Source in the top viewport ( Create panel > Geometry > Particle Systems > PF Source )
  2. Move the PF Source on top of the tree in top and left viewports
  3. While the PF Source is still selected, go to the modify panel and apply the following settings:
  • Emission roll-out
    • Emitter Icon
      • Icon Type: Circle
      • Diameter: 105 ( The size of the emitter should be just be just a little larger than the tree. 105 works for my tree. Adjust the value if necessary )
    • Quantity Multiplier:
      • Viewport %: 100 ( to see 100% of the particles in the viewport )

Particle Flow

Step 10 Working in Particle View

Let’s open particle view to modify the particle system we just created ( Graph Editors > Particle View ). Particle view is the main user interface for creating and modifying particle systems in Particle Flow. The main window contains the particle diagram which describes the flow of the particle system(s). By default there are two events wired together. The first is global and named after the PF Source. The second (Event 001) is a local event that has set of actions that describe the initial properties of the particles. For example the ‘Birth’ action describes when and how many particles will be generated.

Below the particle diagram you see the depot that contains all the actions available for the particle system and on the right you see the Parameters Panel that lets you modify the selected action.

Particle View in 3ds Max

Step 11 Particle Flow Settings

Now we are going to adjust the Particle Flow to suit our needs.

  • Select the ‘Birth 001′ action and apply the following parameters:
    • Emit Start: -100
    • Emit Stop: -100 ( Particles are generated in frame -100 and they have some time to travel before hitting the frame 0 )
    • Amount: 1000 ( If you have a slow computer, I recommend leaving this to 100 for now and increasing this value just before you are ready to render )
  • Select the ‘Shape 001′ action and apply the following parameters:
    • 3D: Sphere 20-sides
    • Size: 3,5

Step 12 Particle Deflector

So we want the particles to land on the tree. This can be achieved easily by using UDeflector. UDeflector lets you use any object as a particle deflector.

  • Create UDeflector in the top viewport ( Create panel > Space Warps > Deflectors > UDeflector ).
  • While the UDeflector is selected, go to the modify panel, click ‘Pick object’, and select the tree.

Creating udeflector

Step 13 Deflector in Particle Flow

Go back to the Particle View ( Graph Editors >Particle View ). Drag ‘Collision’ action from the depot into the Event 001 and below the ‘Display 001′ action. Drop the action when you see a blue line. Select the ‘Collision’ action and apply the following parameters to it:

  • Deflectors: UDeflector001 ( Now Particle Flow uses the deflector )
  • Test True If Particle:
    • Collides
      • Speed: Stop ( Now particles stop when they hit the deflector which is actually the tree )

Now you should see some of the particles sitting on the tree.

Step 14 BlobMesh

Next we’re going to use a BlobMesh object to merge the particles into larger objects.

  • Create BlobMesh ( Create panel > Geometry > Compound objects > BlobMesh )
  • Go to the modify panel and apply the following parameters:
    • Size: 3
    • Tension: 0,5
    • Blob Objects: PF Source 001 ( Click ‘Pick’ and select the Particle Flow object )If you change Particle Flow parameters after this you have to remove the Particle Flow from the BlobMesh and add it again to see the changes.
  • Apply Turbosmooth modifier to the BlobMesh ( Select BlobMesh > Modify Panel > Modifier List > Object-Space Modifiers > Turbosmooth )
  • Open Material Editor and pply the snow material to the BlobMesh

Now if you render the scene you see both the BlobMesh and the Particle Flow. We should hide the Particle Flow particles. To do that, open Particle View, select ‘Render 001′ action and apply the following parameter:

  • Render 001 > Type: None ( particles won’t render )

Creating 3d snow with blobmesh

We’re looking the tree from the shadow side so the snow is pretty dark. Let’s create a fill light to make it stand out more:

  1. Create Omni light ( Create panel > Lights > Standard > Omni ) in the top viewport
  2. Move it to coordinates: -106 -1104 619
  3. Select the Omni and go to the modify panel
  4. Click ‘Exclude..’ button, double-click BlobMesh in the list, and click ‘Include’. Click ‘OK’ to close the dialog.( Now the Omni illuminates only the blobmesh )
  5. Go to the Intensity/Color/Attenuation roll-out and set the Multiplier to 0,5

One tree hill

Now the point of interest ( the tree ) stands out better.

Step 15 Sun with Lens Effects

Now we’re going to add sun to the sky:

  • Create a new Omni light ( Create panel > Lights > Standard > Omni ) in the top viewport
  • Move it to coordinates: -2060 -130 405
  • While the omni is still selected, go to the modify panel
  • Click Exclude…’ button
  • Click ‘Include’ in the new dialog. Click ‘OK’ to close it.

We made these changes because we don’t want this light to illuminate anything. It will just serve as source for the lens effect we’re going to add:

  1. Open Effects window ( Rendering > Effects )
  2. Click ‘Add…’ button and select ‘Lens Effects’ from the list. Click ‘OK’ to close the dialog.
  3. Click ‘Pick Light’ ( Lens Effects Globals roll-out ) and select the omni we just created.
  4. Double-click ‘Glow’ in the Lens Effects Parameters roll-out to add it to the effects list. ( on the left you see all possible lens effects, and on the right you see the lens effects you have selected )
  5. Select the ‘Glow’ on the right side, go to the Glow Element roll-out, and apply the following parameters:Size: 150 ( Size of the glow )

    Intensity: 90
    ( Intensity of the glow )

    Glow Behind: NO

    Radial Color: White White

Now you can close the dialog and render your scene to see the glow effect. You can move the omni to change the location and you can change the Omni’s multiplier to change the intensity of the effect.

Glow lens effects

Step 16 Finalizing 3d Snow Scene with Snow Flakes

As a last thing we’re going to create falling snow flakes. Let’s use legacy particle systems to keep things simple. Create Particle Cloud in the top viewport ( Create panel > Geometry > Particle Systems > PCloud ) and apply the following parameters to it:

  • Basic Parameters
    • Display Icon
      • Rad/Len: 800
      • Width: 700
      • Height: 350
  • Particle Generation
    • Particle Quantity
      • Use Total: 5000
    • Particle Motion
      • Speed: 2 ( we give them speed so that we can blur them with motion blur )
      • Variation: 30
    • Particle Timing
      • Emit Start: -1
      • Emit Stop: -1
    • Particle Size
      • Size: 0,6
      • Variation 100
    • Particle Type
      • Standard Particles
        • Sphere

Position the particle cloud so that it covers the camera view. Some particles will fade into the fog. Now let’s create a simple material for the snow flakes. Just create and apply white material and set Self Illumination to 100.

Floating snow flakes

Now the snow flakes look too round. Let’s add motion blur to create lots of variation. Since each particle has a random speed and direction, each particle will look different with motion blur. Add motion blur to the snow flakes:

  1. Select the PCloud
  2. Right-click on PCloud and select ‘Object Properties…’ from the the menu
  3. Make sure Motion Blur is enabled and select ‘Object’ as motion blur type ( see picture below ). Click ‘OK’ to close the dialog.
  4. Finally, enable motion blur in mental ray ( Rendering > Render Setup… >Renderer > Camera Effects > Motion Blur > Enable )

The motion blur will really slow down the rendering, but is, in my opinion, worth it.

Applying motion blur in 3d max

Render your scene to get the image below.

3d scene with snow in 3ds max

That’s it. Thank you for reading!

Click to share if you like it!

33 Responses to “3D Snow”

  1. I am glad you are back with your tutorials, they are very good!

  2. If anyone has any problems with Particle Emitters and BlobMesh, let me know ;)

    • Mathias says:

      Do you have a blog or something else with 3D studio max tutorials like these? :) thanx in advance!

      • No, I’m more of a freeware game developer. Might start a portfolio site next summer though. I helped with this tutorial because I learnt polygon modeling here, and thought I’d return something back. I might help on another tutorial.

    • Mathias says:

      great! :) this is far the best site i know to learn 3d studio max…so i’m really glad that anti has a helper now because i wait really long dor the next tutorial :) so i’m really glad there’s a new one now…do you know other really good sites to learn 3d studio max because I did all the tutorials on this site :p

      • Just google ’3ds tutorials’. I myself try and learn from experience, and the tutorials I follow are usually tutorials I find on the go.

      • polygonblog says:

        Have you tried my older blog: http://www.secondpicture.com/3d_tutorials.html

      • Mathias says:

        Thanx a lot!

  3. Khánh Phạm says:

    Great tutorial, easy to follow, thank you!

  4. Stano Tirpák says:

    I agree with Maria. My very favorite tutorial page. Thank you!

  5. Mathias says:

    Glad you’re back!

  6. musarratjabeen says:

    thank you for your this 3d tutorial & please not late to next tutorial

  7. Max says:

    You’re amazing man ! Thank you so much for sharing your skills.

  8. Djghost1133 says:

    Finally more tuts! I love all of your tutorials, glad your back.

  9. whjms says:

    Wow! I thought this blog was dead! It’s great to know there’ll be more tutorials here.

  10. Iw says:

    Thanks, great tutorial,
    But My snow flakes are missing after I enabled ‘blur’ in camera effects… Am I doing something wrong?


    And how to add more snow to the tree, which value I have to increase?

    • polygonblog says:

      Not sure. Make sure you are rendering frame 0.

  11. zandi says:

    thank u so much my techear nicolas mamo for that fully ditailed toturial cani get ur facebook account please?

    • Sure, I guess. Just search for my name. I have Olympique Lyonnais’ crest as my profile picture.

      • Oh, most of the credit should really go to the author of the blog ;)

  12. Gregory Hooker says:

    Thanks so much for this tutorial. I am wanting to create a terrain that has a vehicle drive along it while the trees are above. Do you have a suggestion?

  13. Todd says:

    Again another fantastic, straight forward and easy to follow tutorial. This has really helped me with my university work. Thank you so much! Keep up the good work!

  14. Yay! A new tutorial. Awesome stuff dude. I’m teaching my last 3D modeling course before I graduate and I’m passing along a lot of your knowledge to my students. Thanks for making me a better teacher. J

    • polygonblog says:

      Nice to hear that Jared!

    • Congrats buddy! Pleased to have helped you.

  15. 3dmax kursu says:

    Thanks a lot for this wonderfull tutorial. İ’ve bookmarked this blog.

  16. particioner(3DS MAX) says:

    hehehe…. nice tutorial its easy to follow… i did it successfully thanks to you!!!!! hope you post more tutorials for us..

  17. Gauge says:

    Great tutorial, very easy to follow. Just recently started modeling and I found a lot of this useful for other things as well. But I had some issues with lighting/shadows in this scene even following along exactly. My render is “whitewashed” The hill glares with very few shadows and very little textural detail and the background hills are barely visible. Tried adjusting light intensity and even repositioning cam and/or light but to no acceptable result. Is it possible something is missing? Or maybe the shadows/light/scene is reliant on a setting I haven’t configured yet (being a new user), that this tutorial skipped mentioning? Rebuilt 3 times following every step precisely (even triple-checked), only to get the same results…any suggestions?

  18. Khánh Phạm says:

    Can you teach us how to make a cloudy sky scene ? with a bit of cartoon style ? please :D

  19. Tomas says:

    Awesome man! Maybe some fog would be nice there :P

  20. Hellfang132 says:

    Can you make a tutorial for making explosions :D

  21. RealSpace says:

    Cool! Easy to follow, thanks : )

Leave a Reply