DigitalRune Physics

DigitalRune Physics is a .NET class library for game physics, especially rigid body dynamics. Such a library is usually called a physics engine. The library was designed for use in video games and virtual reality applications.

This topic contains the following sections.

Minimal Requirements

Supported Platforms

  • Microsoft .NET Framework 4.0 (or higher)

  • Microsoft XNA Framework 4.0 (Windows, Xbox 360, Windows Phone 7)

  • Mono and MonoGame

Features

Here is an overview of features in this product.

General

  • Intended and optimized for use in 3D real-time applications

  • Multithreading support

  • Extensible: Users can add new force effects, constraints (joints), materials etc.

Simulation

  • Rigid body dynamics

  • Computation of mass properties for all kinds of shapes and general triangle meshes

  • Force effects and force fields: Gravity, Damping, Explosion, Buoyancy (bodies swimming in water)

  • Materials supporting dry friction, restitution and surface motion. Support for uniform materials, composite materials and custom materials.

  • Sleeping (Automatic deactivation of inactive objects)

  • Continuous Collision Detection (CCD) for fast moving objects

Constraints

  • Joints: ball-and-socked joint, cylindrical slider joint, prismatic slider joint, fixed/weld joint, hinge/revolute joint, hinge-2 joint, universal joint

  • Joint limits: angular limits, linear limits, plane limit, twist-and-swing limit

  • Free configurable contraints that can be used to create new constraint types: AngularLimit, LinearLimit

  • Motors and damped springs: Position motors, orientation motors, velocity motors (servos)

  • Miscellaneous constraints: No-rotation constraint, point-on-line constraint, point-on-plane constraint

Special Modules

  • Ragdolls for Xbox LIVE Avatars (including blending of ragdoll physics and keyframed animation)

  • Character controllers for computing 3D avatar movement

  • Vehicle physics

Namespaces

Subtopics