| DigitalRune Geometry |
DigitalRune Geometry is a .NET class library
containing types and algorithms to solve geometrical problems,
in particular general purpose collision detection.
The library was designed for use in computer graphics, video games and
virtual reality applications.
This topic contains the following sections:
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 shape types, collision algorithms,
collision filters or spatial partitioning methods
Collision shapes
-
Primitives: box, capsule, circle, cone, cylinder, height field, line, line segment,
orthographic view volume, perspective view volume (frustum),
plane, point, ray, rectangle, sphere, triangle
-
Compound shapes: composites of primitives, convex hull of points, convex hull of shapes,
Minkowski sum, Minkowski difference, triangle mesh
-
Uniform and non-uniform scaling of shapes
-
Automatic computation of tight-fitting bounding shapes
(bounding spheres, bounding capsules, oriented bounding boxes and
convex hulls)
-
Volume computation for all shapes and closed triangle meshes
Collision detection
-
Supported collision queries:
-
Have-contact queries (boolean queries)
-
Closest-point queries (proximity queries)
-
Contact queries (intersection queries incl. contact positions,
normal vectors and penetration depths) and ray casting
-
Time-of-impact queries (Continuous Collision Detection, CCD)
-
Customizable collision filtering
-
Broad phase collision detection
-
Trigger objects
-
Contact filtering and contact reduction
-
Persistent contacts and contact caching
Mesh manipulation
-
Mesh representation using doubly-connected edge lists (DCEL)
-
Convex hull creation and simplification
-
Automatic approximation of triangle meshes for arbitrary convex shapes (using support map sampling)
-
Approximate Convex Decomposition (ACD)
-
...
Spatial partitioning
-
Axis-aligned bounding box tree
-
Compressed axis-aligned bounding box tree for memory intense objects
-
Dynamic axis-aligned bounding box tree for dynamic objects
-
Adaptive axis-aligned bounding box tree for large deformable meshes
-
Sweep and Prune method
-
Dual partition broad-phase method
-
...
Namespaces
Following namespaces belong to DigitalRune.Geometry:
Subtopics