22 #ifndef __D_SHAPE_STATIC_BVH__
23 #define __D_SHAPE_STATIC_BVH__
25 #include "ndCollisionStdafx.h"
26 #include "ndShapeStaticMesh.h"
30 typedef dFloat32 (*dgCollisionBVHUserRayCastCallback) (
const ndBodyKinematic*
const body,
const ndShapeStaticBVH*
const collsionShape, dFloat32 interception, dFloat32* normal, dInt32 faceId,
void* usedData);
45 static dFloat32 RayHit(
void*
const context,
const dFloat32*
const polygon, dInt32 strideInBytes,
const dInt32*
const indexArray, dInt32 indexCount);
46 static dIntersectStatus ShowDebugPolygon(
void*
const context,
const dFloat32*
const polygon, dInt32 strideInBytes,
const dInt32*
const indexArray, dInt32 indexCount, dFloat32 hitDistance);
47 static dIntersectStatus GetTriangleCount(
void*
const context,
const dFloat32*
const polygon, dInt32 strideInBytes,
const dInt32*
const indexArray, dInt32 indexCount, dFloat32 hitDistance);
48 static dIntersectStatus GetPolygon(
void*
const context,
const dFloat32*
const polygon, dInt32 strideInBytes,
const dInt32*
const indexArray, dInt32 indexCount, dFloat32 hitDistance);
66 } D_GCC_NEWTON_ALIGN_32;
69 D_COLLISION_API
virtual void Save(
nd::TiXmlElement*
const xmlNode,
const char*
const assetPath, dInt32 nodeid)
const;
70 dInt32 m_trianglesCount;