Skip to content

PhysicsAPI reference

Enum PhysicsCapabilities

Namespace: MicroEngine.Physics
Assembly: MicroEngine.Physics.dll
Guide: Physics worlds

What a physics backend offers beyond the common contract of IPhysicsWorld2D. Every backend passes the common conformance suite; each flag it declares has a suite of its own that runs only on backends declaring it. A request that needs an undeclared flag fails with PhysicsCapabilityException: a backend never emulates a capability silently.

C#
[Flags]
public enum PhysicsCapabilities

Fields

Capsules = 32

Capsule shapes (Capsule), including a capsule as the shape Move moves.

Circles = 64

Circle shapes (Circle).

ContinuousCollision = 256

Continuous collision for fast dynamic bodies (Bullet).

DynamicBodies = 4

Dynamic bodies (Dynamic) moved by the solver: velocities, gravity, contact events.

FrictionRestitution = 512

Per-shape friction and restitution (Friction, Restitution).

Joints = 16

Joints between bodies.

MassProperties = 1024

Per-shape density and the mass it gives a dynamic body (Density).

MovingSolids = 2048

Moving solids (PushesBodies): a kinematic body that, when moved, pushes the kinematic bodies in its way and carries the ones resting on it.

None = 0

Only the common contract.

OneWayPlatforms = 2

One-way platforms (OneWay): a shape that stops only bodies coming down onto its up-facing side (against Up), implemented inside the backend.

Polygons = 128

Convex polygon shapes (Polygon).

Rotation = 8

Rotated bodies (Rotation other than 0) and bodies that rotate.

ShapeInspection = 4096

Reading shapes back (ShapesOf, DescriptionOf): what a debug view needs to draw the world. Both built-in backends declare it.

TileGeometry = 1

Grid-aligned static geometry fed directly from tile layers (the tile backend’s own AddTiles).