Index
A
- absolute tolerance
- about / Comparison
- reference link / Comparison
- accessor function
- about / Linear Velocity
- accumulated impulses
- about / Accumulated impulse
- adjugate function
- implementing / Adjugate matrix, Getting ready
- angles
- about / Angles, How to do it…, How it works…
- radians / Radians and degrees
- degrees / Radians and degrees
- Angular Acceleration
- about / Angular Velocity and Acceleration
- Tangential Acceleration / Tangential Acceleration
- Centripetal Acceleration / Tangential Acceleration, Centripetal Acceleration
- Angular Impulse
- about / Introduction
- using / Angular Impulse, How to do it..., How it works...
- reference link / There's more...
- non-linear projection / Non-linear projection
- angular momentum
- reference link / Tensors
- Angular Velocity
- about / Angular Velocity, Angular Velocity and Acceleration, How to do it..., There's more...
- Torque / Torque
- Inertia Tensor / Inertia Tensor
- tensors / Tensors
- anti-symmetric matrix
- reference link / How it works…
- arbiter
- arbiter system
- implementing / Arbiters
- Axis Aligned Bounding Box (AABB)
- about / Axis Aligned Bounding Box, How to do it, How it works, Point and AABB, Sphere-to-AABB, Introduction, Triangle to Axis Aligned Bounding Box, The Model object, Bounding Box in frustum
- point tests, implementing / Point and AABB, Getting ready, How to do it…, How it works…
- raycast, implementing / Raycast Axis Aligned Bounding Box, How to do it…, How it works…
- Linetest function, implementing / Linetest Axis Aligned Bounding Box, Getting ready, How it works…
- Raycast function, updating / Raycast Bounding Box, How to do it…, How it works…
- Axis Aligned Bounding Box (AABB) to Axis Aligned Bounding Box
- intersection, testing / AABB-to-AABB, How to do it…
- Axis Aligned Bounding Box (AABB) to Oriented Bounding Box
- intersection, testing / AABB-to-OBB, Getting ready, How to do it…, How it works…
- Axis Aligned Bounding Box (AABB) to plane
- intersection, testing / AABB-to-plane, Getting ready, How it works…
- Axis Aligned rectanlge
- about / Oriented rectangle
- axis angle rotation
- about / Axis angle rotation, Getting ready, How it works…
- axis of intersection
- about / Manifold for boxes
B
- Ball Joint / Joints
- barycentric coordinates
- about / Raycast Triangle
- basis vectors
- about / How rotations work
- Baumgarte Stabilization
- about / Stability improvements
- bend springs
- about / Cloth
- BoundingShape
- about / Getting ready
- Bounding Volume Hierarchy (BVH)
- about / Mesh optimization
- Box2D
- Box2D Lite
- about / Open source physics engines, Box2D Lite
- reference link / Box2D Lite
- broad-phase collision
- about / Operations on the scene
- broad phase collision
- about / Broad phase collisions, How to do it…, How it works…
- Bullet
C
- camera
- building / Introduction
- camera class
- creating / Camera object, How to do it…, How it works…
- Center of Mass
- about / Centripetal Acceleration
- center point
- about / Getting ready, Axis Aligned Bounding Box
- Centripetal Acceleration
- circle
- about / Circle, How it works…
- circle to circle
- intersection, verifying / Circle to circle, How it works…
- circle to oriented rectangle
- intersection, testing / Circle to oriented rectangle, Getting ready, How to do it…
- circle to rectangle
- intersection, verifying / Circle to rectangle, How to do it…, How it works…
- Closest Point / Circle to rectangle, Getting ready, How to do it…, How it works…
- closest point
- determining, of sphere / How it works…
- determining, on AABB / How it works…
- determining, on OBB / How it works…
- determining, on plane / How it works…
- determining, on line / How it works…
- determining, on ray / How it works…
- finding, on triangle / Closest point triangle, Getting ready, How to do it…, How it works…
- cloth
- about / Cloth, Getting ready
- creating / How to do it…, How it works…
- adding, to Physics Sytem / Physics System Modification, How to do it…, How it works…
- co-directional
- about / How it works…
- co-planar
- about / Triangle
- Coefficient of Friction
- about / Friction
- Coefficient of Restitution
- about / Solving constraints, Linear Velocity, Linear Impulse
- cofactor of matrix
- about / Cofactor
- collision
- resolving / Collision resolution
- collision checks
- implementing / Introduction
- Collision Manifold
- about / Introduction, Manifold for spheres
- finding, of sphere / Manifold for spheres, Getting ready, How to do it…, How it works…
- finding, of OBB / Manifold for boxes, How to do it…, How it works…
- reference link / There's more…
- duplicate points / Duplicate points
- collision normal
- about / Manifold for spheres
- collisions
- about / Introduction
- Column Major matrix
- about / Matrix majors
- complex shape
- about / Simple and complex shapes, How it works…
- component-wise operations
- about / Component-wise operations, How to do it…
- addition / Addition
- subtraction / Subtraction
- multiplication (vector and scalar) / Multiplication (Vector and Scalar)
- comparison / Comparison
- Configuration Space Object (CSO)
- about / Minkowski Sum
- containing circle
- about / Containing circle, Getting ready, How it works…
- containing rectangle
- about / Containing rectangle, Getting ready, How it works…
- containment test
- about / Point and Oriented Bounding Box
- Convex Hulls
- about / There's more…
- Coulombs Law
- about / How to do it...
- Cramers Rule
- about / How to do it…
- using / How it works…
- reference link / How it works…
- cross product
- about / Cross product, How to do it…, How it works…
- cross products
- about / How it works…
- Cyclone Physics
- about / Cyclone Physics
- reference link / Cyclone Physics
- Cyrus-Beck clipping
- about / How it works…
D
- 2D collisions
- optimizing / Introduction
- 2D line
- about / 2D lines, How to do it…
- 2D point
- about / 2D points, How it works…
- 3D line segment
- implementing / How to do it…
- 3D point
- about / Point, Getting ready, How it works…
- 3D scene
- about / The Scene object
- implementing / How to do it…
- Dear IMGUI library
- about / How it works…
- reference link / There's more…
- determinant
- finding, of 2x2 matrix / Determinant of a 2x2 matrix, How it works…
- finding, of 3x3 matrix / Determinant of a 3x3 matrix, How it works…
- determinants
- about / Determinant of a 2x2 matrix
- direction / Vector definition
- DirectX
- about / Matrix majors, Projection matrix, How it works…
- Distance Joint / Joints
- dot product
- about / Dot product, How to do it…, How it works…, There's more…
- geometric definition / Geometric definition
- dyn4j
E
- End point
- about / Line segment
- End Point
- about / 2D lines
- epsilon test
- about / How it works…
- Euler Integration
- Expanding Polytope Algorithm (EPA)
- about / Expanding Polytope Algorithm (EPA)
- reference link / Expanding Polytope Algorithm (EPA)
- eye space
- about / View matrix
F
- Field Of View (FOV)
- about / Projection matrix
- Fixed Joint / Joints
- framework
- Friction
- about / Linear Velocity
- frustum
- about / Frustum object
- creating, from matrix / Frustum from matrix, How to do it…, How it works…
- intersection tests, implementing for sphere / Getting ready, How to do it…, How it works…
- OBB / Bounding Box in frustum, Getting ready, How to do it…, How it works…
- Frustum object
- creating / Frustum object, Getting ready, How to do it…, How it works…
- Frustum primitive
- about / Introduction
G
- game physics
- references / Online resources
- generic cofactor function
- implementing / Cofactor, How to do it…
- generic collisions
- about / Generic collisions
- Minkowski Sum / Minkowski Sum
- GJK / Gilbert Johnson Keerthi (GJK)
- EPA / Expanding Polytope Algorithm (EPA)
- generic Transpose function
- implementing / Transpose, Getting ready, How to do it…, How it works…
- Gilbert-Johnson-Keerthi (GJK)
- about / There's more…
- Gilbert Johnson Keerthi (GJK)
- about / Generic collisions, Gilbert Johnson Keerthi (GJK)
- reference link / Gilbert Johnson Keerthi (GJK)
- implementing / Gilbert Johnson Keerthi (GJK)
- Gimbal Lock
- about / How rotations work, Axis angle rotation
- GLAD OpenGL Loader
- about / There's more…
- reference link / There's more…
- ground clamping
- about / Introduction
H
- half-extents
- about / Getting ready, Axis Aligned Bounding Box
- Hinge Joint / Joints
- Hookes Law
- about / Springs
I
- identity matrix
- about / Identity matrix, Getting ready, How to do it…, How it works…
- Impulses
- about / Linear Impulse
- reference link / There's more...
- Inertia Tensor
- about / Inertia Tensor
- Infinite Subdivision
- about / Quad tree
- Integration
- about / Integrating particles
J
- JigLib
- joint
- about / Joints, How to do it…, How it works…
- joint, types
L
- Laplace Expansion
- Lateral Axis
- about / How rotations work
- Left Handed Coordinate System
- about / Projection matrix
- length of vector
- about / Magnitude
- line
- about / 2D lines, Line segment
- point tests, implementing / Point and line, Getting ready, How it works…
- Linear Algebra
- about / Introduction
- reference link / Introduction
- Linear Impulse
- about / Introduction, How to do it...
- using / Linear Impulse, How to do it...
- finding / Linear Impulse
- friction / Friction, There's more...
- Linear Projection
- about / Physics System Update, How it works...
- linear transformation
- about / Rotation matrices
- Linear Velocity
- about / Linear Velocity, How to do it..., How it works...
- line intersection
- about / Line intersection, How to do it…
- line circle / Line circle
- line rectangle / Line rectangle
- line oriented rectangle / Line oriented rectangle
- Line Segment
- about / 2D lines, Line segment, Getting ready
- Linetest function
- implementing, on sphere / Linetest Sphere, Getting ready
- implementing, on AABB / Linetest Axis Aligned Bounding Box, Getting ready, How it works…
- implementing, on OBB / Linetest Oriented Bounding Box, How it works…
- implementing, against plane / Linetest Plane, How to do it…, How it works…
- implementing / Linetest Triangle
- line to triangle
- intersection, verifying / Linetest Triangle, How to do it…
- Longitudinal Axis
- about / How rotations work
M
- magnitude / Vector definition
- about / Magnitude, How it works…, There's more…
- Matrices
- about / Introduction
- matrix
- definition / Matrix definition, How to do it…, How it works…
- multiplication / Multiplication, How to do it…, How it works…
- using / Introduction
- frustum, creating / Frustum from matrix, How to do it…, How it works…
- matrix inverse
- about / Matrix inverse, How it works…
- expanding / Expanding the inverse
- matrix majors
- Row Major Matrix / Matrix majors
- Column Major Matrix / Matrix majors
- Row Major matrix / Matrix majors
- Column Major matrix / Matrix majors
- mesh
- about / Mesh object
- implementing / How to do it…, How it works…
- optimization / Mesh optimization, How to do it…, How it works…
- intersection tests, implementing / Mesh operations, How to do it…, How it works…
- mesh object
- about / Mesh object
- Minkowski Addition
- about / Minkowski Sum
- Minkowski Difference
- about / Minkowski Sum
- Minkowski Sum
- about / Generic collisions, Minkowski Sum
- minor function
- implementing / Matrix of minors, How to do it…, How it works…
- of 2x2 matrix / Minor of a 2x2 matrix
- of 3x3 matrix / Minor of a 3x3 matrix
- MIT License
- about / There's more…
- Model class
- intersection tests, implementing / How to do it…
- Model object
- about / The Model object, How to do it…
- models
- operations / Operations on models, Getting ready, How to do it…, How it works…
- moment of inertia
- reference link / Inertia Tensor, Tensors
- Motor Joint / Joints
- mutator function
- about / Linear Velocity
N
- n-tuple
- about / Vector definition
- Newtons Laws of Motion
- about / Integrating particles
- normalizing
- about / Normalizing, How to do it…
- normals
- about / Plane-to-plane
- normal vector
- about / Normalizing
O
- Octree
- about / The Octree object
- implementing / How to do it…
- support functions, implementing / Octree contents, How to do it…, How it works…
- operations / Operations on the Octree, How to do it…, How it works…
- integration, into scene / Getting ready, How to do it…, How it works…
- Octree acceleration structure
- about / Introduction
- Octree culling
- about / Octree culling, How to do it…, How it works…
- Octree object
- about / The Octree object, How to do it…, How it works…
- Open Dynamics Engine (ODE)
- OpenGL
- about / Matrix majors, Projection matrix, How it works…, There's more…
- reference link / There's more…
- open source physics engines
- about / Open source physics engines
- Box2D Lite / Box2D Lite
- Box2D / Box2D
- dyn4j / Dyn4j
- Bullet / Bullet
- ODE / ODE
- JigLib / JigLib
- react3D / React 3D
- qu3e / Qu3e
- Cyclone Physics / Cyclone Physics
- operations
- implementing, on 4x4 matrix / Operations on a 4x4 matrix, How to do it…
- on models / Operations on models, Getting ready, How to do it…, How it works…
- on scene / Operations on the scene, How to do it…, How it works…
- on Octree / Operations on the Octree, How to do it…, How it works…
- Orbital Camera
- creating / Camera controls, Getting ready, How to do it…, How it works…
- about / Camera controls
- Oriented Bounding Box (OBB)
- about / Oriented Bounding Box, Getting ready, Point and Oriented Bounding Box, Sphere-to-OBB, Introduction, Triangle to Oriented Bounding Box, Getting ready, How to do it…, Getting ready, Bounding Box in frustum
- point tests, implementing / Point and Oriented Bounding Box, How to do it…, How it works…
- raycast, implementing / Raycast Oriented Bounding Box, How to do it…, How it works…
- Linetest function, implementing / Linetest Oriented Bounding Box, How it works…
- in frustum / Bounding Box in frustum, Getting ready, How to do it…, How it works…
- Raycast function, updating / Raycast Bounding Box, How to do it…, How it works…
- Collision Manifold, finding / Manifold for boxes, How to do it…, How it works…
- Oriented Bounding Box (OBB) to Oriented Bounding Bob (OBB)
- intersection, testing / OBB-to-OBB, How to do it…
- Oriented Bounding Box (OBB) to plane
- intersection, testing / OBB-to-plane, How to do it…, How it works…
- oriented rectangle
- about / Oriented rectangle, How it works…
- oriented rectangle to oriented rectangle
- intersection, testing / Oriented rectangle to oriented rectangle, Getting ready, How it works…
- ortho-normal
- about / Camera object
- ortho-normal matrix
- about / Getting ready
- orthogonal camera
- about / Camera object
- orthogonal vectors
- about / Camera object
- orthographic projection
- about / Projection matrix
P
- particles
- integrating / Integrating particles, How to do it…, How it works…
- modifications / Particle Modifications, Getting ready, How to do it…, How it works…
- penalty based collision resolution
- about / Collision resolution
- penalty force
- about / Collision resolution
- penetration distance
- about / Manifold for spheres
- Perpendicular Axis
- about / How rotations work
- perspective projection
- about / Projection matrix
- Physics Scene
- about / The Scene object
- Physics System
- about / Introduction
- implementing / Physics system, Getting ready, How to do it…, How it works…
- updating / Physics System Update, How to do it..., How it works...
- reference link / How it works...
- modification, for adding cloth support / Physics System Modification, How to do it…, How it works…
- picking
- implementing / Picking, Getting ready, How to do it…, There's more…
- pitch
- about / How rotations work
- plane
- about / Plane, Getting ready
- point tests, implementing / Point and plane, How to do it…
- raycast, implementing / Raycast plane, How to do it…, How it works…
- Linetest function, implementing / Linetest Plane, How to do it…, How it works…
- plane equation
- about / Plane
- planes
- Raycast function, updating for planes / Raycast plane and triangle
- Raycast function, updating / How to do it…, How it works…
- plane to plane
- intersection, testing / Plane-to-plane
- point
- about / Vector matrix multiplication, 2D points
- implementing, in triangle / Point in triangle, How to do it…, How it works…
- point containment
- about / Point containment, How to do it…
- point on line / Point on a line
- point in circle / Point in a circle
- point in rectangle / Point in a rectangle
- point in oriented rectangle / Point in an oriented rectangle
- point mass system
- about / Particle Modifications, Cloth
- point tests
- implementing, for sphere / Point and sphere, Getting ready, How to do it…
- implementing, for AABB / Point and AABB, Getting ready, How to do it…, How it works…
- implementing, for OBB / Point and Oriented Bounding Box, How to do it…, How it works…
- implementing, for plane / Point and plane, How to do it…
- implementing, for line / Point and line, Getting ready, How it works…
- implementing, for ray / Point and ray, Getting ready, How to do it…
- Post Multiplication
- about / Vector matrix multiplication
- Pre Multiplication
- about / Vector matrix multiplication
- Projection
- about / Picking
- projection
- about / Projection, Getting ready, How it works…
- projection matrix
- about / Projection matrix, How it works…, Introduction
- orthographic projection / Projection matrix
- perspective projection / Projection matrix
- reference link / Projection matrix
- Purplemath
- reference link / Introduction
Q
- qu3e
- quad tree
- about / Quad tree, How to do it…, How it works…
- Quaternion
- about / There's more...
- reference link / There's more...
- querying
- about / Operations on the scene
R
- radians
- reference link / Radians and degrees
- radius
- about / Circle
- ray
- about / Ray, How it works…
- point tests, implementing / Point and ray, Getting ready, How to do it…
- Raycast function
- updating, for AABB / Raycast Bounding Box, How to do it…, How it works…
- updating, for OBB / Raycast Bounding Box, How to do it…, How it works…
- updating, for triangles / Raycast plane and triangle, How to do it…, How it works…
- updating, for planes / Raycast plane and triangle, How to do it…, How it works…
- raycasting
- implementing, against sphere / How to do it…, How it works…
- implementing, against AABB / Raycast Axis Aligned Bounding Box, How to do it…, How it works…
- implementing, against OBB / Raycast Oriented Bounding Box, How to do it…, How it works…
- implementing, against plane / Raycast plane, How to do it…, How it works…
- triangle / Raycast Triangle, How to do it…, How it works…
- about / How to do it…, Operations on the scene
- RaycastSphere function
- updating / Raycast sphere, How to do it…, How it works…
- react3D
- rectangle
- about / Rectangle, How to do it…
- rectangle to oriented rectangle
- intersection, testing / Rectangle to oriented rectangle, Getting ready, How to do it…, How it works…
- rectangle to rectangle
- intersection, testing / Rectangle to rectangle, Getting ready, How it works…
- reflection
- about / Reflection, Getting ready, How it works…
- Relative Normal
- about / Linear Impulse
- relative tolerance
- about / Comparison
- reference link / Comparison
- Relative Velocity
- about / Linear Impulse
- Render Scene
- about / The Scene object
- Resting Length
- about / Springs
- restoring force
- about / Springs
- Right Handed Coordinate System
- about / Projection matrix
- rigidbody
- about / Physics system
- modifications / Rigidbody Modifications, How it works…
- roll
- about / How rotations work
- rotation
- working / How rotations work, How to do it…
- Rotation
- about / Oriented rectangle
- rotation matrices
- about / Rotation matrices, How to do it…, How it works…
- X-Basis vector / X-Basis vector
- Y-Basis vector / Y-Basis vector
- Z-Basis vector / Z-Basis vector
- X rotation / X and Y rotation
- Y rotation / X and Y rotation
- Row Major matrix
- about / Matrix majors
- runtimes
- reference link / Generic collisions
S
- scalar multiplication
- about / Multiplication
- scalar product
- about / Dot product
- scale
- about / Scaling
- scale factor
- about / The Model object
- scaling
- about / Scaling, Getting ready, How it works…
- scene
- raycasting operation / Operations on the scene, How to do it…, How it works…
- querying operation / Operations on the scene, How to do it…, How it works…
- Octree, integration / Octree scene integration, How to do it…, How it works…
- Scene object
- about / The Scene object, How to do it…, There's more
- Separating Axis Theorem
- implementing, for robustness / Robustness of the Separating Axis Theorem, Getting ready, How to do it…, How it works…
- Separating Axis Theorem (SAT) / Introduction
- about / Separating Axis Theorem, How to do it…, How it works…, AABB-to-OBB, How it works…, Generic collisions
- axis, determining to test / Determining which axis to test
- set of contact points
- about / Manifold for spheres
- shear springs
- about / Cloth
- signed displacement / Vector definition
- simple shape
- about / Simple and complex shapes, How to do it…
- sinking
- about / Physics System Update
- slab tests
- about / How it works…
- Slider Joint / Joints
- slop
- adding / Stability improvements
- slope intercept form
- about / 2D lines, How to do it…
- soft body
- about / Cloth
- soft body objects
- about / Softbody objects
- SOH-CAH-TOA
- about / There's more…
- SolveConstraints method
- implementing / Solving constraints, How to do it…, How it works…
- sphere
- about / Sphere, Getting ready, How it works…
- point tests, implementing / Point and sphere, Getting ready, How to do it…
- raycast, implementing / How to do it…, How it works…
- Linetest function, implementing / Linetest Sphere, Getting ready
- intersection tests, implementing against frustum / Getting ready, How to do it…, How it works…
- Collision Manifold, finding / Manifold for spheres, Getting ready, How to do it…, How it works…
- sphere to Axis Aligned Bounding Box (AABB)
- intersection, testing / Sphere-to-AABB, Getting ready
- sphere to Oriented Bounding Box (OBB)
- intersection, testing / Sphere-to-OBB, How to do it…, How it works…
- sphere to plane
- intersection, testing / Sphere-to-plane, How to do it…
- sphere to sphere
- intersection, testing / Sphere-to-sphere, How it works…
- springs
- about / Springs, How to do it…, How it works…, Springs
- collision, resolving / Collision resolution
- soft body objects / Softbody objects
- springs Equilibrium
- about / Springs
- square matrix
- about / Matrix definition
- stability improvements
- about / Stability improvements
- arbiter / Arbiters
- accumulated impulses / Accumulated impulse
- Start Point
- about / 2D lines
- Start point
- about / Line segment
- structural springs
- about / Cloth
- support function
- about / Generic collisions
- symmetric matrix
- reference link / How it works…
T
- Tangential Acceleration
- about / Tangential Acceleration
- tensors
- Tiny OBJ Loader
- reference link / There's more…
- Torque
- about / Torque
- transform matrix
- about / Transform matrix, Getting ready, How it works…
- translation
- about / Translation, Getting Ready, How it works…
- triangle
- about / Triangle, How to do it
- point, implementing in / Point in triangle, How to do it…, How it works…
- closest point, finding / Closest point triangle, Getting ready, How to do it…, How it works…
- raycasting / Raycast Triangle, How to do it…, How it works…
- triangles
- Raycast function, updating for planes / Raycast plane and triangle
- Raycast function, updating / How to do it…, How it works…
- triangle to Axis Aligned Bounding Box (AABB)
- intersection, verifying / Triangle to Axis Aligned Bounding Box, Getting ready, How to do it…
- triangle to Oriented Bounding Box (OBB)
- intersection, verifying / Triangle to Oriented Bounding Box, Getting ready, How to do it…
- triangle to plane
- intersection, verifying / Triangle to plane, How to do it…
- triangle to sphere
- intersection, verifying / Triangle to sphere, How to do it…
- triangle to triangle
- intersection, verifying / Triangle to triangle, Getting ready, How to do it…, How it works…
- tunneling
- about / How it works…
- tuple
- about / Vector definition
U
- unit length
- about / Normalizing
- unit vector
- about / Normalizing
- Unprojection
- about / Picking
V
- vector
- about / Introduction, Vector matrix multiplication
- definition / Vector definition, Getting ready, How it works…
- direction / Vector definition
- magnitude / Vector definition
- W component / The W component
- vector equality / Component-wise operations
- vector matrix multiplication
- Velocity Verlet Integration
- about / There's more…
- using / Verlet Integration, How to do it…, How it works…
- view matrix
- about / View matrix, How it works…, Introduction
- View Transform matrix
- about / Getting ready
W
- W component / The W component
- world transform
- about / Camera object
X
- 2x2 matrix
- determinant, finding / Determinant of a 2x2 matrix, How it works…
- 3 X 3 Rotation Matrix
- about / How rotations work
- 3x3 matrix
- determinant, finding / Determinant of a 3x3 matrix, How it works…
- 4x4 matrix
- operations, implementing / Operations on a 4x4 matrix, How to do it…
Y
- yaw
- about / How rotations work