![]() |
• World Manager | ||||||||||||||||||||||||||||
|
API Links
Developer Links
|
World::DetectCollisionDefined in:
Detects a collision between world geometry and a swept sphere.
C4World.hPrototype
Parameters
Description
The points specified by the parameters p1 and p2, combined with the radius specified by the radius parameter, define a directed swept sphere. The DetectCollision function detects the first collision between this swept sphere and all Geometry nodes possessing collision information. If a collision is detected, then the function returns true; otherwise, it returns false.The clas parameter can be used to invalidate certain types of collisions. When a candidate geometry is encountered in the collision detection process, its collision exclusion mask is logically ANDed with the value of the clas parameter. A collision can only occur if the result of this operation is zero. The collision mask associated with a geometry can be set using the GeometryObject::SetCollisionExclusionMask function. The collision class can be a combination (through logical OR) of the following predefined values and application-defined values.
CollisionData structure pointed to by the data parameter is filled out with information about the collision. The param field of this data structure represents the fraction of the distance that the sphere traveled from p1 to p2 before the collision occurred.The DetectCollision function works by intersecting a line segment with the Minkowski sum of a sphere and arbitrary polygon meshes. The algorithm is very precise and can determine when collisions occur with the expanded faces, edges, or vertices of the mesh referenced by a geometry node. If the value of the radius parameter is 0.0, then the collision detection reduces to a ray intersection with faces only.
See Also
|