![]()
Trace
Description: BSP collision detection code
Source file: …\genesis3d\OpenSource\Source\World\TRACE.h
Functions:
GEWorldCollision, WorldCollisionBNode, WorldCollisionExact, WorldCollisionExact2, MiscCollision, MiscCollision2, WorldCollisionBBox, TestModelMove, ModelCollision, InverseTreeFromBox, GetContents, GetMoveBox, SetupIntersect, IntersectWorldBSP, BoxOnPlaneSide, BBoxInVisibleLeafConstants:
viewAddition for Genesis3D v1.6:
GetTexureName![]()
Return to Contents
![]()
Functions:
![]()
geBoolean Trace_GEWorldCollision( geWorld* World, const geVec3d* Mins, const geVec3d* Maxs, const geVec3d* Front, const geVec3d* Back, uint32 Contents, uint32 CollideFlags, uint32 UserFlags, GE_CollisionCB* CollisionCB, void * Context, GE_Collision* Col);
Notes:
uint32 Contents, // Contents to collide with
uint32 CollideFlags, // GE_COLLIDE_ALL, etc...
uint32 UserFlags, // Flags to mask against actors
Return to Contents
![]()
geBoolean Trace_WorldCollisionBNode(geWorld* World, geVec3d* Front, geVec3d* Back, int32* ModelNum, geVec3d* Impact, int32* Node, int32* Plane, int32* Side);
Return to Contents
![]()
geBoolean Trace_WorldCollisionExact(geWorld* World, const geVec3d* Front, const geVec3d* Back, uint32 Flags, geVec3d* Impact, GFX_Plane* Plane, geWorld_Model** Model, Mesh_RenderQ** Mesh, geActor** Actor, uint32 UserFlags, GE_CollisionCB* CollisionCB, void * Context);
Return to Contents
![]()
geBoolean Trace_WorldCollisionExact2(geWorld* World, const geVec3d* Front, const geVec3d* Back, geVec3d* Impact, int32* Node, int32* Plane, int32* Side);
// Internal only/ does not chek meshes/ returns index numbers into bsp structures for models
Return to Contents
![]()
geBoolean Trace_MiscCollision(GFX_BNode* BNodes, GFX_Plane* Planes, const geVec3d* Mins, const geVec3d* Maxs, const geVec3d* Front, const geVec3d* Back, geXForm3d* XForm, geVec3d* I, GFX_Plane* P);
Return to Contents
![]()
geBoolean Trace_MiscCollision2(GFX_BNode* BNodes, GFX_Plane* Planes, const geVec3d* Front, const geVec3d* Back, geVec3d* I, int32* P);
Return to Contents
![]()
geBoolean Trace_WorldCollisionBBox( geWorld* World, const geVec3d* Mins, const geVec3d* Maxs, const geVec3d* Front, const geVec3d* Back, uint32 Flags, geVec3d* I, GFX_Plane* P, geWorld_Model** Model, Mesh_RenderQ** Mesh, geActor** Actor, uint32 UserFlags, GE_CollisionCB* CollisionCB, void * Context);
Return to Contents
![]()
geBoolean Trace_TestModelMove( geWorld * World, geWorld_Model * Model, const geXForm3d* DXForm, const geVec3d * Mins, const geVec3d* Maxs, const geVec3d * In, geVec3d* Out);
Return to Contents
![]()
geBoolean Trace_ModelCollision(geWorld * World, geWorld_Model * Model, const geXForm3d* DXForm, GE_Collision* Collision, geVec3d * ImpactPoint);
Return to Contents
![]()
geBoolean Trace_InverseTreeFromBox(geVec3d* Mins, geVec3d* Maxs, GFX_BNode* BNodes, GFX_Plane* Planes);
Return to Contents
![]()
geBoolean Trace_GetContents(geWorld* World, const geVec3d* Pos, const geVec3d* Mins, const geVec3d* Maxs, uint32 Flags, uint32 UserFlags, GE_CollisionCB* CollisionCB, void * Context, GE_Contents* Contents);
Return to Contents
![]()
geBoolean Trace_GetTexureName(geWorld* World, const geVec3d* Pos, const geVec3d* Mins, const geVec3d* Maxs, char* TexName);
Added for Genesis3D v1.6
Return to Contents
![]()
Return to Contents
![]()
Return to Contents
![]()
geBoolean Trace_IntersectWorldBSP(geVec3d* Front, geVec3d* Back, int32 Node);
Return to Contents
![]()
int32 Trace_BoxOnPlaneSide(const geVec3d* Mins, const geVec3d* Maxs, GFX_Plane* Plane);
Return to Contents
![]()
geBoolean Trace_BBoxInVisibleLeaf(geWorld* World, geVec3d* Mins, geVec3d* Maxs);
Return to Contents
![]()