I like to set myself up with a problem or challenge when I’m learning something. For a 3D scene I’m currently working on I wanted to add a waterfall. Sounds simple, but I wanted it to be animated, to really look like water was moving through a channel, over the edge, and then plunging down.
Most of the online tutorials I found approached it from the viewpoint of looking up at the waterfall, so you never had to see the water flowing up to the edge and over, all you saw was the falling spray. The falling spray is pretty easy to animate using a particle system. You just set the particle system up to spray out particles like a fire hose and put one or more at the top of the waterfall. Great. But I wanted to see the water actually flowing up to the lip and over.
Creating a water texture in 3DS Max is pretty simple. You just create a material, make it mostly transparent, and give it reflection and refraction maps. Then you apply it to an object in your scene, like the surface of a pool. You can then apply a noise modifier to the object, and animate the noise. Presto, realistic rippling water.
But the water doesn’t flow anywhere. It doesn’t move. So I started trying to figure out how to make that water look like it was moving. I figured out that the best way would be to apply a noise modifier to the bump map of the water texture, then figure out how to make the texture move across the object. A bump map, which I talked about here is basically a way to add the appearance of roughness or texture to a material. So I added a “turbulence” noise modifier as a bump map to the water material. I even animated the turbulence so it swirled around. Looked good, but it still didn’t move or flow.
Then I thought of a solution. The key is, in 3DS Max, you can add a film as a material texture. Say you have a TV screen in your scene. You can insert a film playing on the TV screen as a texture. That way, when you animate the scene, it looks like there is a film playing on the TV screen. Well, I thought, why can’t I create a film of a flowing noise texture, and then insert that film as the bump map texture.
Creating the film was straightforward. I created a plane in the shape of a long strip, and applied an animated turbulence to it. Then I placed a camera over the strip, pointed down, and moved the strip under it. Then I rendered the scene as a video. Voila, a flowing turbulence texture, seen here:
I then took this video and inserted it as the bump map texture on the water material. It worked like a charm. The water flows along a channel with a natural-looking turbulence.
I then made a waterfall-shaped object (left) and applied the water texture to it.
And there it was, the water appears to flow along the channel and over the edge. I adjusted the size of the material mapping so it was taller than it was wide, so the water movement appeared to travel faster as it plunged over the edge.
I then added the particle systems at the edge to make the sprays of drops as the water goes over the edge. And there you have a pretty good waterfall! Still needs a bit of tweaking, but the essentials are there. Now to the rest of the scene.