Put briefly, a servo is a little motor. With the help of RealFlow's MultiServos you can now accelerate and move objects in a physically correct manner. A car is a good example, because everybody is familiar with its driving behaviour and has a basic idea of the concepts behind the technology. In a car, a motor is (normally) powered by fuel. The burning of the fuel creates energy that can be transferred to a drive system. This system will finally accelerate the car and set the vehicle in motion. The reason why the car can actually move is friction. On an even and polished surface, the car's wheels would simply slip. You have certainly already seen this on icy or wet streets. RealFlow'sMultiServos can mimic this behaviour and set any object in motion with physically correct acceleration and even braking forces. MultiServos can also react to changes of direction and interact with the ground texture. e.g. a stony, uneven ground. If you set “Friction” values of both the car wheels and the ground to 0.0 you can also observe that the wheels slip.
MultiServos cannot only work in traditional cars, but with all kinds of vehicles, trains, fans, propellers, cable cars, lifts and even robots. Though all these objects move we have to differentiate: fans or propellers rotate around a fixed axis or hub. When these objects move, they're stationary and do not change position. Vehicles, lifts or cable cars move in another way – we can call this motion “driving”. Driving objects move along a certain path and will finally reach a new position. RealFlow'sMultiServo system provides four individual nodes to describe these different types of motion.
For linear motions, forces are the most important influence and in RealFlow, forces are introduced by daemons. Gravity is the best known force and creates a linear acceleration along the daemon's orientation. You can create curvy motion with multiple forces or when the forces change direction, but these paths are nothing more than the summation of several linear forces. Of course, creating curved motion for objects with constant velocity by only using force daemons is nearly impossible.
With MultiServos we have to introduce another term, because there, we do not only speak of linear motion, but also of rotation. In this case we are talking about the torque. In a graphic sense, the torque is the “force” in the rotational motion. Just take a look at a jam jar where the cap is totally locked: here you need a very high torque to open the glass. Another example are cars with identical engine performance, but different torques: the vehicle with a high torque will accelerate much faster than the one with a low torque. Different engines also have different torques: when you compare vehicles you will see that cars with traditional Otto engines have a lower torque than Diesels; electric motors have the highest torques. The torque is measured in Newton meter [Nm].
Like MultiJoints, MultiServos also act directly at simulation time and hence can be influenced by external forces, obstacles or other properties such as object friction or elasticity. All these parameters will be taken into account to create a highly realistic physical model. You will now be able to create entire worlds full of interactions, self-driven vehicles, crashing and collapsing buildings, hinged, and connected objects and anything else you can imagine! All these dynamic objects also have the capability to react on or with all kinds of fluids, splashes and foam as well.
Please note that MultiServos can only be used with rigid bodies. However, you can still use joints to attach soft bodies to those rigid objects. For example, if you want to animate a fish, you can always create a skeleton of rigid bodies, animated with servos and joined to the soft body (the fish’s organic tissue) with joints. The servos will move the rigid bodies, and those will move the soft body. With this kind of configuration, we recommend that you disable the collisions between the soft body and the skeleton.