Creating static and dynamic objects
The Box2D library uses its own special representation of physical objects to achieve the simulation of physics. It's often desirable that some objects are fixed in place and other objects move after physical interaction.
This recipe will show you how to prepare physical objects with the LuaBox2D library in an environment of the Lua language.
Getting ready
First of all, you'll need to set up the world environment where all the physical objects will reside. To do this, you'll have to create a World
object, as shown in the following sample code:
local gravity = Vec2(0, -10) local world = box2d.World(gravity)
You'll often need to have only one World
object. The World
object constructor accepts one Vec2
vector object to set the gravity
vector. You can change it later with the following code:
world.gravity = Vec2(0, -5) -- uses unit m/s^2
Do note that the Box2D library uses metric units. The vector for gravitational acceleration uses m*s-2. However, you can change...