The finite element method is a very versatile method for any kind of boundary value problem. It was first extensively used in engineering as a tool for structural analysis, but it can also be used for heat flow, fluid and electrodynamical simulation to name some fields. The underlying principle (as the name implies) is the […]

# physics

## Feature-based geometrical algorithms

Performing collision queries over a large number of objects is computationally expensive and therefore it’s important to use clever algorithms to avoid bottlenecks. After all potentially colliding object pairs have been sorted out during the broad phase, the remaining task is to run some algorithms to determine if and where the objects intersect. Of course […]

## Collision detection for particle systems

One of the things I’m working on for motor2 is the inclusion of a particle system, mainly for simulating bullets, fluids and soft bodies. The main challenge is to build a fast particle-polygon collision detection which would be able to compute the penetration depth and collision normal for a huge amount of particles. The containment […]

## Motor Physics released

100 stacking boxes at 60Hz with 30 iterations More examples: 200 stacked boxes polygon soup compound shapes So here it is – due to lack of free time I have not managed to include all planned features, but I’m working hard to include those in the next update. For now I have removed many things […]

## Updates

Motor Physics Finally I added support for arbitrary convex polygons, now supporting contact ids for managing persistent contacts. This is needed for a feature called warm starting which improves the quality of the solver. Furthermore the complexity of the polygon intersection algorithm was reduced from [(N0 + N1)^2] to [2*N0*N1] (N = number of separation […]

## Slimy Blob

(click flash, keep mouse inside stage, use the cursor keys to interact with the blob) Chris and I have experimented with several approaches of modeling soft bodies in flash (heavily inspired by loco roco ;-)). This is not a priority for the physics engine, but anyway nice to see :-) We have figured out 3 […]

## Calculating the Moment of Inertia of a non-regular convex Polygon

The moment of inertia is needed to calculate the rotational movement of a body. You can think of it as the rotational equivalent of mass. To calculate the moment of inertia you have to integrate the area (volume in 3D) of the polygon in respect to the rotational axis (most often than not an axis […]