crashcat docs
    Preparing search index...

    Type Alias CastShapeSettings

    type CastShapeSettings = {
        activeEdgeMovementDirection: Vec3;
        collectFaces: boolean;
        collideOnlyWithActiveEdges: boolean;
        collideWithBackfaces: boolean;
        collisionTolerance: number;
        penetrationTolerance: number;
        returnDeepestPoint: boolean;
        useShrunkenShapeAndConvexRadius: boolean;
    }
    Index

    Properties

    activeEdgeMovementDirection: Vec3

    when collideOnlyWithActiveEdges is true a movement direction can be provided. When hitting an inactive edge, the system will select the triangle normal as penetration depth only if it impedes the movement less than with the calculated penetration depth

    collectFaces: boolean

    if true, the supporting faces at the contact points will be computed and returned in the CastShapeHit objects

    collideOnlyWithActiveEdges: boolean

    how active edges (edges that a moving object should bump into) are handled

    collideWithBackfaces: boolean

    if true, back-faces are considered for collision (otherwise they are ignored)

    collisionTolerance: number

    if objects are closer than this distance, they are considered to be colliding (used for GJK) (unit: meter)

    penetrationTolerance: number

    a factor that determines the accuracy of the penetration depth calculation. If the change of the squared distance is less than tolerance * current_penetration_depth^2 the algorithm will terminate. (unit: dimensionless)

    returnDeepestPoint: boolean

    when true, and the shape is intersecting at the beginning of the cast (fraction = 0) then this will calculate the deepest penetration point (costing additional CPU time)

    useShrunkenShapeAndConvexRadius: boolean

    indicates if we want to shrink the shape by the convex radius and then expand it again. This speeds up collision detection and gives a more accurate normal at the cost of a more 'rounded' shape