```html Physics Engine Concepts – Simple Guide

Physics Engine Concepts – Simple Overview

This page explains core physics engine concepts in simple language so anyone can understand how virtual worlds simulate motion, collisions, and interaction.

The explanations are general and can apply to games, simulations, VR/AR, design tools, and many other interactive applications.

Physics Engine & Collision Detection

A physics engine is the core system that simulates motion and collisions. It uses collision detection to find where objects touch and then applies rules to decide how they react.

Physics Engine

A physics engine is software that simulates real‑world behavior like movement, gravity, and collisions.

It takes object shapes, masses, and forces as input and computes new positions and velocities over time.

Used in games, VR, robotics, CAD tools, and training simulators to make interactions feel believable.

Core System

Collision Detection

Collision detection finds out when and where objects overlap or touch in space.

It usually runs in two stages: a fast broad‑phase to find possible pairs and a precise narrow‑phase to test them.

Used everywhere objects must not pass through each other, like characters hitting walls or parts fitting together.

Broad & Narrow Phase

Broad‑Phase Detection

Broad‑phase quickly filters many objects down to a small set of potential colliding pairs.

It often uses simple bounding boxes or grids to avoid checking every object against every other object.

Used in large scenes to keep physics fast even when hundreds or thousands of objects exist.

Performance

Narrow‑Phase Detection

Narrow‑phase performs detailed checks on pairs flagged by the broad‑phase.

It uses the actual collider shapes to compute contact points, normals, and penetration depth.

Used when accuracy matters, such as precise contact between mechanical parts or character feet on stairs.

Accuracy

Continuous Collision Detection (CCD)

CCD prevents fast‑moving objects from tunneling through thin geometry between frames.

Instead of checking only at discrete positions, it considers the motion path during the time step.

Used for bullets, fast tools, or quickly moving parts that must never pass through walls or other objects.

Fast Motion

Actor Types (How Objects Behave)

Different actor types tell the physics engine whether an object should move freely, stay fixed, or be driven by user input or animation.

Static Actor

A static actor represents an immovable object with effectively infinite mass.

It does not move under forces or collisions but other objects can collide with it.

Used for floors, walls, fixed machinery, and any environment geometry that never moves.

Immovable

Dynamic Actor

A dynamic actor is fully simulated and responds to forces, gravity, and collisions.

It has mass, inertia, and velocities that the engine updates every simulation step.

Used for boxes, tools, debris, vehicles, and any object that should move naturally.

Fully Simulated

Kinematic Actor

A kinematic actor is moved by user code or animation, not by forces or gravity.

It can push dynamic objects but is not pushed back by collisions.

Used for VR hands, animated doors, conveyor belts, and guided assembly parts.

User‑Driven

Collider Types (How Shapes Are Represented)

Colliders are simplified shapes used for collision detection. They approximate visible geometry to balance accuracy and performance.

Convex Hull

A convex hull wraps a shape in the smallest convex volume that contains it.

It ignores holes and caves but is fast and stable for simulation.

Used for many game objects and tools where perfect concavity is not required.

Convex Approximation

Convex Decomposition

Convex decomposition splits a complex concave object into multiple convex parts.

This preserves holes and cavities while still using convex shapes internally.

Used for mechanical parts, complex props, and objects that must fit together accurately.

Concave via Parts

Triangle Mesh

A triangle mesh collider uses the actual surface triangles of the model.

It can represent fully concave shapes but is usually limited to static actors.

Used for detailed environments, terrain, and fixed structures where accuracy matters.

Static Concave

SDF (Signed Distance Field)

An SDF stores the distance to the nearest surface in a 3D grid of voxels.

It can represent complex concave shapes without explicit triangle tests.

Used for advanced collision, soft bodies, and GPU‑accelerated physics and rendering.

Voxel Distance

Sphere

A sphere collider is defined by a center and radius.

It is extremely fast to test and behaves the same from all directions.

Used for balls, simple characters, and rough approximations of round objects.

Simple Shape

Box

A box collider is a rectangular volume aligned to its local axes.

It is cheap to compute and works well for many man‑made objects.

Used for crates, buildings, furniture, and quick approximations of complex meshes.

Rectangular

Capsule

A capsule is a cylinder with rounded ends, defined by a radius and height.

It slides smoothly over edges and small obstacles.

Used for character bodies, limbs, tools, and handles in many games and VR apps.

Character Shape

Plane

A plane collider represents an infinite flat surface.

It has no thickness but is perfect for simple ground or boundaries.

Used for floors, water surfaces, and invisible limits in simulations.

Infinite Surface

Collider Settings (How Contacts Are Formed)

These settings fine‑tune how close objects get before colliding, how detailed colliders are, and how much simplification is applied.

Contact Offset

Contact offset defines how far from the surface collisions start being detected.

A small buffer helps avoid objects visually intersecting before the engine reacts.

Used to make collisions feel responsive and to prevent fast objects from clipping slightly.

Early Contact

Rest Offset

Rest offset is the distance at which objects are considered resting on each other.

It controls how close surfaces get when they settle after a collision.

Used to avoid jitter and to decide whether objects appear to touch or slightly hover.

Rest Distance

Merge Geometries

Merge geometries combines multiple meshes into a single collider shape.

This reduces the number of colliders and speeds up simulation at the cost of detail.

Used when many small parts can be treated as one solid object.

Combine Shapes

Enable Mesh Reduction

Mesh reduction simplifies a collider mesh by removing less important triangles.

It keeps the overall shape while lowering computational cost.

Used for large or detailed models where full resolution is unnecessary for collisions.

Simplify Mesh

Reduction Ratio

Reduction ratio controls how many triangles are kept during mesh reduction.

Lower ratios mean more aggressive simplification and fewer triangles.

Used to balance performance and accuracy depending on how precise collisions must be.

Triangle Count

Reduction Tolerance

Reduction tolerance sets how far the reduced mesh may deviate from the original.

Smaller tolerances keep the shape closer to the source geometry.

Used when you need simplification but still require good shape fidelity.

Shape Error

Minimum Triangles

Minimum triangles defines the lowest triangle count allowed after reduction.

It prevents the collider from becoming too simple to be useful.

Used to guarantee a baseline level of detail for important objects.

Detail Floor

Rigid Body Properties (How Surfaces Feel)

These properties describe how objects resist motion, slide against each other, and bounce after impacts.

Static Friction

Static friction resists the start of sliding between two surfaces at rest.

Higher values make objects feel sticky and harder to push initially.

Used for objects that should stay put until a clear force is applied, like crates on a rough floor.

Start of Motion

Dynamic Friction

Dynamic friction resists motion while surfaces are already sliding.

Higher values slow down sliding and make movement feel heavier.

Used to control how smoothly objects slide, such as parts fitting into guides or rails.

Sliding

Restitution

Restitution controls how bouncy a collision is between two objects.

Low values absorb energy, while high values cause noticeable bouncing.

Used for everything from soft landings to lively balls and arcade‑style physics.

Bounciness

Mass

Mass describes how heavy an object is in the simulation.

Heavier objects accelerate less under the same force.

Used to make vehicles, tools, and characters feel appropriately weighty.

Weight

Inertia & Center of Mass

Inertia defines how hard it is to rotate an object around its axes.

The center of mass is the point where mass is balanced.

Used to control how objects spin, tip over, and react to off‑center impacts.

Rotation

Linear & Angular Velocity

Linear velocity is how fast an object moves through space.

Angular velocity is how fast it rotates around its axes.

Used by the engine to update positions and orientations each simulation step.

Motion

Scene Settings & Interaction

Scene‑level settings define global behavior like gravity and time, while interaction concepts describe how users move objects in a stable way.

Gravity Vector

The gravity vector defines the direction and strength of gravitational acceleration.

It pulls dynamic objects toward a chosen direction, usually downward.

Used to simulate natural falling, stacking, and weight in almost all physics‑based applications.

Global Force

Time Manipulator

A time manipulator scales the speed of the physics simulation.

Slowing time makes motion more visible; speeding it up makes everything more energetic.

Used for slow‑motion effects, debugging, and stylized gameplay or visualization.

Time Scale

Dynamic Manipulation Allowed

This setting controls whether dynamic objects can be directly dragged or moved by the user.

When enabled, the engine applies forces or constraints instead of teleporting objects.

Used in editors and tools where users interactively reposition simulated objects.

User Control

Rubber Band Interaction

Rubber band interaction uses a temporary spring‑like constraint between the cursor and an object.

It pulls the object toward the target instead of instantly snapping it there.

Used in editors and VR tools to keep physics stable while dragging objects around.

Soft Constraint

Constraint Forces

Constraint forces keep objects aligned with rules like joints, hinges, or springs.

They correct positions and orientations while still allowing some motion.

Used for doors, robotic arms, vehicles, and guided assembly paths.

Joints

Compliant Constraints

Compliant constraints allow a bit of stretch or softness instead of being perfectly rigid.

This reduces jitter and makes motion feel more natural.

Used when objects should follow a target but still react smoothly to collisions.

Soft Joints

GPU & Rendering Related Concepts

Modern physics and rendering often share GPU technologies to handle complex scenes and advanced visual effects.

Vulkan

Vulkan is a low‑level graphics and compute API designed for high performance and control.

It allows applications to efficiently use modern GPUs for rendering and sometimes physics compute.

Used in real‑time visualization, games, VR, and professional graphics tools.

Graphics API

Gaussian Techniques

Gaussian methods, such as Gaussian splatting, use smooth blobs to represent surfaces or points.

They can be rendered or processed efficiently on GPUs for soft, continuous shapes.

Used in advanced rendering, point‑based scenes, and experimental simulation techniques.

Smooth Representation

GPU Acceleration

GPU acceleration offloads heavy computations from the CPU to the graphics processor.

This enables more complex physics, larger scenes, and higher frame rates.

Used in modern engines for particle systems, fluid simulation, and large‑scale collision handling.

Parallel Compute

Voxelization

Voxelization converts geometry into a 3D grid of small cubes (voxels).

It is often a first step for SDF generation or volumetric effects.

Used in physics, lighting, destruction, and volumetric rendering techniques.

Volume Grid
```