Improve your 3ds Max workflow: Adding natural movement with the Flex modifier
3D visualizer Paul Hatton shows how to simulate natural movement in 3ds Max without having to key frame it using the Flex modifier...
Improving your 3ds Max workflow – previous chapters:
Top 10 interface secrets
Better modeling workflow
Handling massive scenes
3ds Max animation tools
Organic placement using MassFx
An introduction to Particle Flow
3ds Max is a vast piece of software and every so often I discover a new modifier or a new tool; something which I probably knew was there but didn't know what it was for. The Flex modifier is one such example. It's been there for years but only recently have I seen the value it can add. It enables you to simulate soft-body dynamics on an object. For example, if you have a soft-body item attached to an animated object, you would expect that item to move with the object. The Flex modifier enables you to set this up.
Introducing the modifier
The Flex modifier can be applied to a poly, mesh, patch or NURBS object. The modifier allows you to turn your object into a virtual spring, with the ability to adjust the springs' stiffness, stretch and giving specific vertices different weights. There are therefore all the tools you need to customize your object to move in the way you would expect it to in real life.
Animate and apply modifier
Firstly set your animation up. For a simple example, just create a cylinder with several segments and key frame it moving across the screen. Hit play and watch your seriously boring animation! When you've hit rock bottom, try applying the Flex modifier and re-play your animation. Suddenly you will see the object come to life! It has transformed from a rigid object to a soft body object that wiggles at the end due to the velocity!
Adjusting the center point
One of the beautiful things about the Flex modifier is how easy it is to adjust the center point that the object flexes around. The center point defaults to the pivot point of the object it's attached to. You can adjust it by expanding the Flex modifier and selecting Center. With this selected, it's as simple as using the Move tool to adjust it. Try moving it and replay your animation.
Adjusting vertex weightings
Once you've played around for a little while you might discover that you want something that is a bit more customized. So rather than the object flexing with a nice falloff, you might want specific vertices to respond in different ways. This can be done by adjusting the vertex weights. So with the Flex modifier expanded, select Edge Vertices. Then head to the Weights and Painting rollout, adjust the strength and hit Paint. Then simply paint onto the viewport. Adjust the Radius and Feather for more control.
Adjusting the stretch and stiffness
Scroll down to the ‘Simple Soft Bodies' rollout and notice that you can adjust the stretch and stiffness of the object. All you need to do is hit ‘Create Simple Soft Body' once and then adjust the parameters. The changes take place immediately without having to repeatedly click the ‘Create' button. The stretch parameter sets how much the object can elongate whereas the stiffness determines how rigid the object is. Play around with the settings and see how it affects your object.
An introduction to forces
So far we've focused on ensuring that our objects flex based upon their velocity. We are also able to create forces like wind, gravity and drag. We can cause these forces to act upon our objects, saving us untold time having to key frame it. So for example, say you have a windy day and a bouncing ball that flexes as it bounces, you might also want the ball to be affected by the wind in the environment. This is achievable with a few straight-forward steps, as we'll come to see.
A ball on a windy day
Create a sphere and apply the Flex modifier to it. Head over to the create panel and to the Space Warps section. Select Wind and click-and-drag in the viewport to create your wind gizmo. Adjust the wind parameters Strength and Turbulence to something like 6 or whatever suits you! Then select the Flex modifier on the sphere, go down to the Forces and Deflectors rollout and click the Add button in the Forces group. Select your wind gizmo and play your animation. And there it is, a wobbly ball. Magic!
A falling ball
With your ball affected by the wind let's add a gravity force to it. Go back to the Space Warps section and select Gravity. Click-and-drag in the viewport to create the gizmo. Select the Flex modifier again and head down to the Forces and Deflectors rollout. In the Forces group add the Gravity force. Adjust the gravity strength to see it take effect on your ball.
An introduction to deflectors
Now we're going to move on to look at using deflectors in our simulations. It is often helpful to not only apply forces to objects but to also have those objects interact with surfaces. There are plenty of applications such as throwing an object against a wall, which we'll look at in a minute. There are a range of deflector choices but the key to getting good results is to ensure that the bounce is low and the friction is high. This will cause your object to collide and stick to the surface. Let's look at an example.
Splatting a ball against a wall
This is more fun in real life but it's still fun in 3D! Create a sphere to represent your ball of goo and apply a Flex modifier to it. Head over to the create panel and to the Space Warps section. Choose deflectors from the drop-down. Select Deflector and click-and-drag in the viewport to create your gizmo. Now key frame your ball moving through your deflector. With that set up, select the Flex modifier on the sphere, go down to the Forces and Deflectors rollout and click the Add button in the Deflectors group. Select your deflector gizmo and play your animation. And there it is – a ball splatted on your surface!
Top tip: Always experiment
There are loads of applications for the Flex modifier. If you ever find yourself key framing something that is natural in essence, think about using the Flex modifier along with forces and deflectors.