This is a 3D collision detection DLL for GameMaker: Studio. Written in C++ using the Bullet library's collision detection functions.
- Shapes: sphere, box, capsule, cone, cylinder, plane
- Triangle meshes
- Load trimesh from model file
- Compound shapes
- Collision objects
- World system
- Masks for filtering collisions
- Raycast test
- Overlap test
- Sweep test
- Get position, surface normal, and distance of hit from raycasts and sweeps
- Transformations: translation, rotation, and scaling
- Very fast.
Note: All scripts are prefixed with "c_" for "collision".
- Create the collision world
- Create a collision shape
- Create a collision object, which uses the shape. (reuse the shape as many times as you like)
- Add the collision object to the world
- Perform collision checks on the world or on the object
Overlap tests do not work between two trimeshes. You can however, check collisions between any other kind of shape and a trimesh.
You cannot perform a sweep test with a trimesh because swept shapes need to be convex. You can do sweep tests against them.
Scaling has limitations. It only works on shapes, not objects, and not all shapes support non-uniform scaling.
Limited testing done so far. May contain bugs.
Edited by Venomous, 14 October 2015 - 06:28 PM.