

Physics Engine
Rigid Body Dynamics
Torque Game Builder's rigid body dynamics simulate Newtonian physics and models all the standard bells and whistles, including inertia, linear velocity, angular velocity, friction, restitution, relaxation, and damping, and has an easy method for applying impulse-forces and torque. Configuring objects is as easy as enabling automatic collision response for the object, and setting up the object's physics parameters. These parameters include friction, restitution, relaxation, damping, density, and a force scaling factor. The first four are the coefficients used to model the object's physics properties, density is used to calculate the object's mass based on the area of its collision polygon, and force scaling is used to lessen or heighten the net force applied to the object at any time. Additional physics parameters, such as maximum and minimum linear and angular velocities, can be configured as well. They can also be affected by an individual, constant gravitation force, or be set up to automatically rotate at a given pace. Once again, TGB leverages datablocks to make the process of setting up physics properties as simple and quick as possible for developers. Multiple objects can share the same datablock, so using collision material datablocks can be a real development time-saver.
Customizable Collision Response System
Of course, you're not forced to use Torque Game Builder's impressive default physics and collision response system. Similarly to how collisions work, any object in TGB can turn on or off the ability to send or receive updates to/from the default physics system. For a TGB object which you want to be fully a part of the default physics simulation, you'd enable both sending and receiving of physics. For an object which you didn't want to be part of the physics simulation at all, you'd disable both. If you wanted an object to be able to cause automated physical reactions in other objects, but not be affected by default physics itself, you'd enable the ability to send physics, and disable the ability to receive. You'd do the opposite if you wanted an object which could react to other objects using the default physics system, but that wouldn't initiate default physical responses with other objects itself. In this way, you can completely (or partially) detach any object from TGB's default physics system. You are then totally free to implement your own collision response system, in C++ or even just in script. Or, you could customize the existing system, again either in C++, or in script.
Physics-Based Object Mounts
Torque Game Builder allows you to mount, or attach, objects to other objects. When you mount one object
to another, the two objects can automatically move around together. Setting up mounts is quick and multiple
objects can attach to another, at any point on the object and at any distance. And mounted objects can
have one or more objects mounted to them. So, it's easy to create long chains and big webs of mounted
objects. In addition, you can specify whether a mount should be rigid (such that the mounted object always
stays the same distance from its parent), or use mount forces. With a mount force, you can dictate that a
mounted object should move with its parent after the specified force is being exerted on the mount
connection. When the parent object moves, a mounted object with a mount force will lag behind the parent's
movement, catching up if/when the parent comes to rest.






