# how to make a field of shakiness

Is there a way to make a 3d space of shakiness( or any kind of effect), that if an object passed by it or stay in it can be affected and when the object goes away of it that effect ends?

Thanks, guys :)

• Welcome to StackExchange! What is "shakiness"? Can you please clarify your question. – Omar Emara Jun 20 '19 at 18:25
• Sure, Mr Omar, I mean by " Shakiness". " Shake to make the object which passes by this field move in many directions in a random way. Like when you shake your juice before drinking it :) – Fallal Jun 21 '19 at 18:31
• Look into force field objects in Blender – Duarte Farrajota Ramos Jun 26 '19 at 12:31

You can make an object "shake" using noise modifiers and drivers.

1. Create 3 objects. ⇧ ShiftA
• A cube shaped empty named Empty_ControlCube. This object will be use to animate the movement of the cube.
• A sphere shaped empty named Empty_sphere.
• A cube. This object will be rendered.
2. Parent the latter two objects to the Empty_ControlCube ⎈ CtrlP. When you move the Empty_ControlCube, all three objects will move.
3. Add a "control field", in my case a circle. On and near this circle area, the cube should wiggle automatically.
4. Add a Shrinkwrap constraint to the Empty_sphere, choosing the Circle as the target. The Empty_sphere object will now clamp to the Circles area, even if you move the Empty_ControlCube away.
5. Add a keyframe on the channels of the Cube, which you want to wiggle. Select the keyframe(s) in the graph editor and add a noise modifier. When you play/scrub you will see the noise added to the object. The next step is to make it not wiggle if it leaves the circle area. We'll do that by using the distance between the Empty_sphere and the Empty_ControlCube as the driver input.
6. Add constraint to the cube, limiting the movement to 0. Tick the boxes for the respective channels, where you added the noise animation. With limiting constraints active, you shouldn't see any movement anymore.
7. Add a driver to the Influence of the constraints. Go to the drivers window and use the distance as an input variable. Choose the distance between Empty_sphere and Empty_ControlCube. Now the driver input (of the distance variable) will be 0 when the Cube and the Empty_sphere are at the same position. This is the case when the Empty_ControlCube is on the circle. Otherwise it will be larger than 0. I added two keyframes to the driver graph to make the limit constraints active (influence is 1) when the driver input (distance) is larger than 0. You can move the Empty_ControlCube and watch how the driver values change.

The Wiggle Falloff node can be used to introduced the wiggling. The output falloff can then be multiplied with a Point Distance Falloff or an Object Controller Falloff to limit the wiggling to a certain field only: