![]() |
DarkPlaces
Game engine based on the Quake 1 engine by id Software, developed by LadyHavoc
|
|
#include "matrixlib.h"
Go to the source code of this file.
Data Structures | |
struct | colboxbrushf_t |
struct | colbrushf_t |
struct | colplanef_t |
struct | colpointf_t |
union | plane_t |
struct | trace_t |
Macros | |
#define | COLLISIONPARANOID 0 |
Functions | |
void | Collision_BoundingBoxOfBrushTraceSegment (const colbrushf_t *start, const colbrushf_t *end, vec3_t mins, vec3_t maxs, float startfrac, float endfrac) |
void | Collision_BrushForBox (colboxbrushf_t *boxbrush, const vec3_t mins, const vec3_t maxs, int supercontents, int q3surfaceflags, const texture_t *texture) |
void | Collision_Cache_ClipLineToGenericEntitySurfaces (trace_t *trace, struct model_s *model, matrix4x4_t *matrix, matrix4x4_t *inversematrix, const vec3_t start, const vec3_t end, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask) |
void | Collision_Cache_ClipLineToWorldSurfaces (trace_t *trace, struct model_s *model, const vec3_t start, const vec3_t end, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask) |
void | Collision_Cache_Init (struct mempool_s *mempool) |
void | Collision_Cache_NewFrame (void) |
void | Collision_Cache_Reset (qbool resetlimits) |
void | Collision_CalcPlanesForTriangleBrushFloat (colbrushf_t *brush) |
void | Collision_ClipLineToGenericEntity (trace_t *trace, struct model_s *model, const struct frameblend_s *frameblend, const struct skeleton_s *skeleton, const vec3_t bodymins, const vec3_t bodymaxs, int bodysupercontents, matrix4x4_t *matrix, matrix4x4_t *inversematrix, const vec3_t start, const vec3_t end, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask, float extend, qbool hitsurfaces) |
void | Collision_ClipLineToWorld (trace_t *trace, struct model_s *model, const vec3_t start, const vec3_t end, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask, float extend, qbool hitsurfaces) |
void | Collision_ClipPointToGenericEntity (trace_t *trace, struct model_s *model, const struct frameblend_s *frameblend, const struct skeleton_s *skeleton, const vec3_t bodymins, const vec3_t bodymaxs, int bodysupercontents, matrix4x4_t *matrix, matrix4x4_t *inversematrix, const vec3_t start, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask) |
void | Collision_ClipPointToWorld (trace_t *trace, struct model_s *model, const vec3_t start, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask) |
void | Collision_ClipToGenericEntity (trace_t *trace, struct model_s *model, const struct frameblend_s *frameblend, const struct skeleton_s *skeleton, const vec3_t bodymins, const vec3_t bodymaxs, int bodysupercontents, matrix4x4_t *matrix, matrix4x4_t *inversematrix, const vec3_t start, const vec3_t mins, const vec3_t maxs, const vec3_t end, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask, float extend) |
void | Collision_ClipToWorld (trace_t *trace, struct model_s *model, const vec3_t start, const vec3_t mins, const vec3_t maxs, const vec3_t end, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask, float extend) |
void | Collision_ClipTrace_Box (trace_t *trace, const vec3_t cmins, const vec3_t cmaxs, const vec3_t start, const vec3_t mins, const vec3_t maxs, const vec3_t end, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask, int boxsupercontents, int boxq3surfaceflags, const texture_t *boxtexture) |
float | Collision_ClipTrace_Line_Sphere (double *linestart, double *lineend, double *sphereorigin, double sphereradius, double *impactpoint, double *impactnormal) |
void | Collision_ClipTrace_Point (trace_t *trace, const vec3_t cmins, const vec3_t cmaxs, const vec3_t start, int hitsupercontentsmask, int skipsupercontentsmask, int skipmaterialflagsmask, int boxsupercontents, int boxq3surfaceflags, const texture_t *boxtexture) |
void | Collision_CombineTraces (trace_t *cliptrace, const trace_t *trace, void *touch, qbool isbmodel) |
void | Collision_Init (void) |
colbrushf_t * | Collision_NewBrushFromPlanes (struct mempool_s *mempool, int numoriginalplanes, const colplanef_t *originalplanes, int supercontents, int q3surfaceflags, const texture_t *texture, int hasaabbplanes) |
qbool | Collision_PointInsideBrushFloat (const vec3_t point, const colbrushf_t *brush) |
void | Collision_TraceBrushBrushFloat (trace_t *trace, const colbrushf_t *thisbrush_start, const colbrushf_t *thisbrush_end, const colbrushf_t *thatbrush_start, const colbrushf_t *thatbrush_end) |
void | Collision_TraceBrushTriangleFloat (trace_t *trace, const colbrushf_t *thisbrush_start, const colbrushf_t *thisbrush_end, const float *v0, const float *v1, const float *v2, int supercontents, int q3surfaceflags, const texture_t *texture) |
void | Collision_TraceBrushTriangleMeshFloat (trace_t *trace, const colbrushf_t *thisbrush_start, const colbrushf_t *thisbrush_end, int numtriangles, const int *element3i, const float *vertex3f, int stride, float *bbox6f, int supercontents, int q3surfaceflags, const texture_t *texture, const vec3_t segmentmins, const vec3_t segmentmaxs) |
void | Collision_TraceLineBrushFloat (trace_t *trace, const vec3_t linestart, const vec3_t lineend, const colbrushf_t *thatbrush_start, const colbrushf_t *thatbrush_end) |
void | Collision_TraceLineTriangleFloat (trace_t *trace, const vec3_t linestart, const vec3_t lineend, const float *point0, const float *point1, const float *point2, int supercontents, int q3surfaceflags, const texture_t *texture) |
void | Collision_TraceLineTriangleMeshFloat (trace_t *trace, const vec3_t linestart, const vec3_t lineend, int numtriangles, const int *element3i, const float *vertex3f, int stride, float *bbox6f, int supercontents, int q3surfaceflags, const texture_t *texture, const vec3_t segmentmins, const vec3_t segmentmaxs) |
void | Collision_TracePointBrushFloat (trace_t *trace, const vec3_t point, const colbrushf_t *thatbrush) |
Variables | |
struct cvar_s | collision_bih_fullrecursion |
struct cvar_s | collision_extendmovelength |
struct cvar_s | collision_extendtraceboxlength |
struct cvar_s | collision_extendtracelinelength |
struct cvar_s | collision_impactnudge |
#define COLLISIONPARANOID 0 |
Definition at line 195 of file collision.h.
void Collision_BoundingBoxOfBrushTraceSegment | ( | const colbrushf_t * | start, |
const colbrushf_t * | end, | ||
vec3_t | mins, | ||
vec3_t | maxs, | ||
float | startfrac, | ||
float | endfrac ) |
Definition at line 1367 of file collision.c.
References i, maxs, min, mins, colbrushf_t::points, colpointf_t::v, VectorCopy, and VectorLerp.
void Collision_BrushForBox | ( | colboxbrushf_t * | boxbrush, |
const vec3_t | mins, | ||
const vec3_t | maxs, | ||
int | supercontents, | ||
int | q3surfaceflags, | ||
const texture_t * | texture ) |
Definition at line 1141 of file collision.c.
References colboxbrushf_t::brush, colplanef_t::dist, colboxbrushf_t::edgedirs, colbrushf_t::edgedirs, colbrushf_t::hasaabbplanes, i, colbrushf_t::isaabb, colbrushf_t::maxs, maxs, colbrushf_t::mins, mins, colplanef_t::normal, colbrushf_t::numedgedirs, colbrushf_t::numplanes, colbrushf_t::numpoints, colboxbrushf_t::planes, colbrushf_t::planes, colboxbrushf_t::points, colbrushf_t::points, colbrushf_t::q3surfaceflags, colplanef_t::q3surfaceflags, colbrushf_t::supercontents, colbrushf_t::texture, colplanef_t::texture, texture, colpointf_t::v, VectorCompare, VectorCopy, and VectorSet.
Referenced by Collision_ClipToGenericEntity(), Collision_TraceLineBrushFloat(), Mod_CollisionBIH_TraceBox(), and Mod_MDLMD2MD3_TraceBox().
void Collision_Cache_ClipLineToGenericEntitySurfaces | ( | trace_t * | trace, |
struct model_s * | model, | ||
matrix4x4_t * | matrix, | ||
matrix4x4_t * | inversematrix, | ||
const vec3_t | start, | ||
const vec3_t | end, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask ) |
void Collision_Cache_ClipLineToWorldSurfaces | ( | trace_t * | trace, |
struct model_s * | model, | ||
const vec3_t | start, | ||
const vec3_t | end, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask ) |
void Collision_Cache_Init | ( | struct mempool_s * | mempool | ) |
Definition at line 1548 of file collision.c.
References collision_cache, Collision_Cache_RebuildHash(), Collision_Cache_Reset(), collision_cachedtrace_max, collision_cachedtrace_rebuildhash, collision_cachedtrace_sequence, and cvar_t::integer.
Referenced by CL_Frame().
Definition at line 1480 of file collision.c.
References collision_cache, collision_cachedtrace_array, collision_cachedtrace_arrayfullhashindex, collision_cachedtrace_arrayhashindex, collision_cachedtrace_arraynext, collision_cachedtrace_arrayused, collision_cachedtrace_firstfree, collision_cachedtrace_hash, collision_cachedtrace_hashsize, collision_cachedtrace_lastused, collision_cachedtrace_max, collision_cachedtrace_mempool, collision_cachedtrace_rebuildhash, collision_cachedtrace_sequence, cvar_t::integer, Mem_Alloc, and Mem_Free.
Referenced by CL_ParseServerInfo(), Collision_Cache_Init(), Collision_Cache_Lookup(), Collision_Cache_NewFrame(), gl_main_start(), and SV_SpawnServer().
void Collision_CalcPlanesForTriangleBrushFloat | ( | colbrushf_t * | brush | ) |
Definition at line 451 of file collision.c.
References COLLISION_PLANE_DIST_EPSILON, collision_triangle_axialsides, collision_triangle_bevelsides, Collision_ValidateBrush(), Con_DPrintf(), CrossProduct, developer_extra, colplanef_t::dist, DotProduct, colbrushf_t::edgedirs, fabs(), i, cvar_t::integer, colplanef_t::normal, colbrushf_t::numedgedirs, colbrushf_t::numplanes, colbrushf_t::planes, colbrushf_t::points, TriangleNormal, colpointf_t::v, VectorAdd, VectorClear, VectorCopy, VectorNegate, VectorNormalize, and VectorSubtract.
Referenced by Collision_TraceBrushTriangleFloat(), and Collision_TraceBrushTriangleMeshFloat().
void Collision_ClipLineToGenericEntity | ( | trace_t * | trace, |
struct model_s * | model, | ||
const struct frameblend_s * | frameblend, | ||
const struct skeleton_s * | skeleton, | ||
const vec3_t | bodymins, | ||
const vec3_t | bodymaxs, | ||
int | bodysupercontents, | ||
matrix4x4_t * | matrix, | ||
matrix4x4_t * | inversematrix, | ||
const vec3_t | start, | ||
const vec3_t | end, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask, | ||
float | extend, | ||
qbool | hitsurfaces ) |
void Collision_ClipLineToWorld | ( | trace_t * | trace, |
struct model_s * | model, | ||
const vec3_t | start, | ||
const vec3_t | end, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask, | ||
float | extend, | ||
qbool | hitsurfaces ) |
void Collision_ClipPointToGenericEntity | ( | trace_t * | trace, |
struct model_s * | model, | ||
const struct frameblend_s * | frameblend, | ||
const struct skeleton_s * | skeleton, | ||
const vec3_t | bodymins, | ||
const vec3_t | bodymaxs, | ||
int | bodysupercontents, | ||
matrix4x4_t * | matrix, | ||
matrix4x4_t * | inversematrix, | ||
const vec3_t | start, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask ) |
void Collision_ClipPointToWorld | ( | trace_t * | trace, |
struct model_s * | model, | ||
const vec3_t | start, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask ) |
void Collision_ClipToGenericEntity | ( | trace_t * | trace, |
struct model_s * | model, | ||
const struct frameblend_s * | frameblend, | ||
const struct skeleton_s * | skeleton, | ||
const vec3_t | bodymins, | ||
const vec3_t | bodymaxs, | ||
int | bodysupercontents, | ||
matrix4x4_t * | matrix, | ||
matrix4x4_t * | inversematrix, | ||
const vec3_t | start, | ||
const vec3_t | mins, | ||
const vec3_t | maxs, | ||
const vec3_t | end, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask, | ||
float | extend ) |
void Collision_ClipToWorld | ( | trace_t * | trace, |
struct model_s * | model, | ||
const vec3_t | start, | ||
const vec3_t | mins, | ||
const vec3_t | maxs, | ||
const vec3_t | end, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask, | ||
float | extend ) |
void Collision_ClipTrace_Box | ( | trace_t * | trace, |
const vec3_t | cmins, | ||
const vec3_t | cmaxs, | ||
const vec3_t | start, | ||
const vec3_t | mins, | ||
const vec3_t | maxs, | ||
const vec3_t | end, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask, | ||
int | boxsupercontents, | ||
int | boxq3surfaceflags, | ||
const texture_t * | boxtexture ) |
Definition at line 1053 of file model_brush.c.
References trace_t::allsolid, mclipnode_t::children, hull_t::clipnodes, Collision_TraceLineBrushFloat(), Con_Printf(), CONTENTS_EMPTY, CONTENTS_SOLID, colplanef_t::dist, mplane_t::dist, RecursiveHullCheckTraceInfo_t::dist, colbrushf_t::elements, RecursiveHullCheckTraceInfo_t::end, hull_t::firstclipnode, trace_t::fraction, colbrushf_t::hasaabbplanes, trace_t::hitsupercontentsmask, RecursiveHullCheckTraceInfo_t::hull, i, colbrushf_t::isaabb, hull_t::lastclipnode, colbrushf_t::markframe, colbrushf_t::maxs, maxs, colbrushf_t::mins, mins, Mod_Q1BSP_RecursiveHullCheck(), colplanef_t::normal, mplane_t::normal, NULL, colbrushf_t::numplanes, colbrushf_t::numpoints, colbrushf_t::numtriangles, mclipnode_t::planenum, colbrushf_t::planes, hull_t::planes, colbrushf_t::points, colplanef_t::q3surfaceflags, trace_t::skipmaterialflagsmask, trace_t::skipsupercontentsmask, RecursiveHullCheckTraceInfo_t::start, trace_t::startsupercontents, colbrushf_t::supercontents, colplanef_t::texture, RecursiveHullCheckTraceInfo_t::trace, mplane_t::type, VectorCopy, and VectorSubtract.
Referenced by CL_SelectTraceLine(), Collision_ClipLineToGenericEntity(), and Collision_ClipToGenericEntity().
float Collision_ClipTrace_Line_Sphere | ( | double * | linestart, |
double * | lineend, | ||
double * | sphereorigin, | ||
double | sphereradius, | ||
double * | impactpoint, | ||
double * | impactnormal ) |
Definition at line 1207 of file collision.c.
References dir, DotProduct, scale, sqrt(), v, VectorClear, VectorCopy, VectorLength, VectorLength2, VectorMA, VectorNormalize, VectorScale, and VectorSubtract.
void Collision_ClipTrace_Point | ( | trace_t * | trace, |
const vec3_t | cmins, | ||
const vec3_t | cmaxs, | ||
const vec3_t | start, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask, | ||
int | boxsupercontents, | ||
int | boxq3surfaceflags, | ||
const texture_t * | boxtexture ) |
Definition at line 1161 of file model_brush.c.
References trace_t::allsolid, BoxesOverlap, trace_t::fraction, trace_t::hitsupercontentsmask, trace_t::skipmaterialflagsmask, trace_t::skipsupercontentsmask, trace_t::startsolid, and trace_t::startsupercontents.
Referenced by Collision_ClipPointToGenericEntity().
void Collision_CombineTraces | ( | trace_t * | cliptrace, |
const trace_t * | trace, | ||
void * | touch, | ||
qbool | isbmodel ) |
Definition at line 1914 of file collision.c.
References trace_t::allsolid, trace_t::bmodelstartsolid, trace_t::endpos, trace_t::ent, trace_t::fraction, trace_t::hitq3surfaceflags, trace_t::hitsupercontents, trace_t::hittexture, trace_t::inwater, plane_t::normal, trace_t::plane, trace_t::startdepth, trace_t::startdepthnormal, trace_t::startsolid, trace_t::startsupercontents, VectorCopy, and VectorLength2.
Referenced by CL_Cache_TraceLineSurfaces(), CL_TraceBox(), CL_TraceLine(), CL_TracePoint(), SV_TraceBox(), SV_TraceLine(), and SV_TracePoint().
Definition at line 25 of file collision.c.
References collision_bih_fullrecursion, collision_cache, Collision_Cache_Init(), collision_debug_tracelineasbox, collision_extendmovelength, collision_extendtraceboxlength, collision_extendtracelinelength, collision_impactnudge, collision_mempool, collision_triangle_axialsides, collision_triangle_bevelsides, Cvar_RegisterVariable(), Mem_AllocPool, and NULL.
Referenced by World_Init().
colbrushf_t * Collision_NewBrushFromPlanes | ( | struct mempool_s * | mempool, |
int | numoriginalplanes, | ||
const colplanef_t * | originalplanes, | ||
int | supercontents, | ||
int | q3surfaceflags, | ||
const texture_t * | texture, | ||
int | hasaabbplanes ) |
qbool Collision_PointInsideBrushFloat | ( | const vec3_t | point, |
const colbrushf_t * | brush ) |
Definition at line 910 of file collision.c.
References BoxesOverlap, colplanef_t::dist, DotProduct, colbrushf_t::maxs, colbrushf_t::mins, colplanef_t::normal, and colbrushf_t::planes.
void Collision_TraceBrushBrushFloat | ( | trace_t * | trace, |
const colbrushf_t * | thisbrush_start, | ||
const colbrushf_t * | thisbrush_end, | ||
const colbrushf_t * | thatbrush_start, | ||
const colbrushf_t * | thatbrush_end ) |
Definition at line 559 of file collision.c.
References trace_t::allsolid, bound, COLLISION_EDGECROSS_MINLENGTH2, collision_impactnudge, CrossProduct, texture_t::currentmaterialflags, plane_t::dist, colbrushf_t::edgedirs, f, trace_t::fraction, furthestplanedist_float(), colbrushf_t::hasaabbplanes, trace_t::hitq3surfaceflags, trace_t::hitsupercontents, trace_t::hitsupercontentsmask, trace_t::hittexture, colbrushf_t::isaabb, nearestplanedist_float(), colplanef_t::normal, plane_t::normal, NULL, colbrushf_t::numedgedirs, colbrushf_t::numplanes, colbrushf_t::numpoints, trace_t::plane, colbrushf_t::planes, colbrushf_t::points, colbrushf_t::q3surfaceflags, colplanef_t::q3surfaceflags, trace_t::skipmaterialflagsmask, trace_t::skipsupercontentsmask, trace_t::startdepth, trace_t::startdepthnormal, trace_t::startsolid, trace_t::startsupercontents, trace_t::starttexture, colbrushf_t::supercontents, colbrushf_t::texture, colplanef_t::texture, colpointf_t::v, cvar_t::value, Vector4Clear, VectorClear, VectorCopy, VectorLength2, and VectorNormalize.
Referenced by Collision_TraceBrushTriangleFloat(), Collision_TraceBrushTriangleMeshFloat(), Collision_TraceLineBrushFloat(), and Mod_CollisionBIH_TraceBrush().
void Collision_TraceBrushTriangleFloat | ( | trace_t * | trace, |
const colbrushf_t * | thisbrush_start, | ||
const colbrushf_t * | thisbrush_end, | ||
const float * | v0, | ||
const float * | v1, | ||
const float * | v2, | ||
int | supercontents, | ||
int | q3surfaceflags, | ||
const texture_t * | texture ) |
Definition at line 1107 of file collision.c.
References Collision_CalcEdgeDirsForPolygonBrushFloat(), Collision_CalcPlanesForTriangleBrushFloat(), COLLISION_SNAP, Collision_SnapCopyPoints(), COLLISION_SNAPSCALE, Collision_TraceBrushBrushFloat(), colbrushf_t::edgedirs, colbrushf_t::hasaabbplanes, i, colbrushf_t::isaabb, colbrushf_t::numedgedirs, colbrushf_t::numplanes, colbrushf_t::numpoints, colbrushf_t::planes, colbrushf_t::points, colbrushf_t::q3surfaceflags, colplanef_t::q3surfaceflags, colbrushf_t::supercontents, colbrushf_t::texture, colplanef_t::texture, texture, v, v0, v1, v2, and VectorCopy.
Referenced by Mod_CollisionBIH_TraceBrush().
void Collision_TraceBrushTriangleMeshFloat | ( | trace_t * | trace, |
const colbrushf_t * | thisbrush_start, | ||
const colbrushf_t * | thisbrush_end, | ||
int | numtriangles, | ||
const int * | element3i, | ||
const float * | vertex3f, | ||
int | stride, | ||
float * | bbox6f, | ||
int | supercontents, | ||
int | q3surfaceflags, | ||
const texture_t * | texture, | ||
const vec3_t | segmentmins, | ||
const vec3_t | segmentmaxs ) |
Definition at line 996 of file collision.c.
References BoxesOverlap, Collision_CalcEdgeDirsForPolygonBrushFloat(), Collision_CalcPlanesForTriangleBrushFloat(), COLLISION_SNAP, Collision_SnapCopyPoints(), COLLISION_SNAPSCALE, Collision_TraceBrushBrushFloat(), colbrushf_t::edgedirs, colbrushf_t::hasaabbplanes, i, colbrushf_t::isaabb, colbrushf_t::numedgedirs, colbrushf_t::numplanes, colbrushf_t::numpoints, colbrushf_t::planes, colbrushf_t::points, colbrushf_t::q3surfaceflags, colplanef_t::q3surfaceflags, stride, colbrushf_t::supercontents, colbrushf_t::texture, colplanef_t::texture, texture, TriangleBBoxOverlapsBox, v, and VectorCopy.
Referenced by Mod_MDLMD2MD3_TraceBox().
void Collision_TraceLineBrushFloat | ( | trace_t * | trace, |
const vec3_t | linestart, | ||
const vec3_t | lineend, | ||
const colbrushf_t * | thatbrush_start, | ||
const colbrushf_t * | thatbrush_end ) |
Definition at line 760 of file collision.c.
References trace_t::allsolid, bound, colboxbrushf_t::brush, Collision_BrushForBox(), collision_debug_tracelineasbox, collision_impactnudge, Collision_TraceBrushBrushFloat(), texture_t::currentmaterialflags, colplanef_t::dist, plane_t::dist, DotProduct, f, trace_t::fraction, trace_t::hitq3surfaceflags, trace_t::hitsupercontents, trace_t::hitsupercontentsmask, trace_t::hittexture, cvar_t::integer, colplanef_t::normal, plane_t::normal, NULL, colbrushf_t::numplanes, trace_t::plane, colbrushf_t::planes, colplanef_t::q3surfaceflags, trace_t::skipmaterialflagsmask, trace_t::skipsupercontentsmask, trace_t::startdepth, trace_t::startdepthnormal, trace_t::startsolid, trace_t::startsupercontents, trace_t::starttexture, colbrushf_t::supercontents, colplanef_t::texture, cvar_t::value, Vector4Clear, VectorClear, and VectorCopy.
Referenced by Collision_ClipTrace_Box(), and Mod_CollisionBIH_TraceLineShared().
void Collision_TraceLineTriangleFloat | ( | trace_t * | trace, |
const vec3_t | linestart, | ||
const vec3_t | lineend, | ||
const float * | point0, | ||
const float * | point1, | ||
const float * | point2, | ||
int | supercontents, | ||
int | q3surfaceflags, | ||
const texture_t * | texture ) |
Definition at line 1251 of file collision.c.
References collision_impactnudge, CrossProduct, plane_t::dist, DotProduct, f, trace_t::fraction, trace_t::hitq3surfaceflags, trace_t::hitsupercontents, trace_t::hitsupercontentsmask, trace_t::hittexture, plane_t::normal, trace_t::plane, trace_t::skipmaterialflagsmask, trace_t::skipsupercontentsmask, sqrt(), texture, cvar_t::value, VectorScale, and VectorSubtract.
Referenced by Collision_TraceLineTriangleMeshFloat(), and Mod_CollisionBIH_TraceLineShared().
void Collision_TraceLineTriangleMeshFloat | ( | trace_t * | trace, |
const vec3_t | linestart, | ||
const vec3_t | lineend, | ||
int | numtriangles, | ||
const int * | element3i, | ||
const float * | vertex3f, | ||
int | stride, | ||
float * | bbox6f, | ||
int | supercontents, | ||
int | q3surfaceflags, | ||
const texture_t * | texture, | ||
const vec3_t | segmentmins, | ||
const vec3_t | segmentmaxs ) |
Definition at line 1078 of file collision.c.
References BoxesOverlap, Collision_TraceLineTriangleFloat(), i, stride, and texture.
Referenced by Mod_MDLMD2MD3_TraceLine().
void Collision_TracePointBrushFloat | ( | trace_t * | trace, |
const vec3_t | point, | ||
const colbrushf_t * | thatbrush ) |
Definition at line 923 of file collision.c.
References trace_t::allsolid, texture_t::currentmaterialflags, colplanef_t::dist, plane_t::dist, DotProduct, trace_t::hitsupercontentsmask, colplanef_t::normal, plane_t::normal, NULL, colbrushf_t::numplanes, trace_t::plane, colbrushf_t::planes, trace_t::skipmaterialflagsmask, trace_t::skipsupercontentsmask, trace_t::startdepth, trace_t::startdepthnormal, trace_t::startsolid, trace_t::startsupercontents, trace_t::starttexture, colbrushf_t::supercontents, colplanef_t::texture, Vector4Clear, VectorClear, and VectorCopy.
Referenced by Mod_CollisionBIH_TracePoint().
|
extern |
Definition at line 21 of file collision.c.
Referenced by Collision_Init(), and Mod_CollisionBIH_TraceLineShared().
|
extern |
Definition at line 14 of file collision.c.
Referenced by CL_CheckBottom(), CL_ClientMovement_Move(), CL_ClientMovement_Physics_Walk(), CL_ClientMovement_Unstick(), CL_ClientMovement_UpdateStatus(), CL_LinkNetworkEntity(), CL_movestep(), CL_NewParticle(), CL_ParticleExplosion(), CL_SpawnDecalParticleForPoint(), CL_Trace_Toss(), Collision_Cache_ClipLineToGenericEntitySurfaces(), Collision_Cache_ClipLineToWorldSurfaces(), Collision_Init(), PHYS_NudgeOutOfSolid(), PHYS_TestEntityPosition(), R_CompleteLightPoint(), R_DrawParticles(), R_MoveExplosion(), R_NewExplosion(), R_Shadow_BounceGrid_TracePhotons_Shot(), R_Shadow_SelectLightInView(), R_Shadow_SetCursorLocationForView(), Sbar_ShowFPS(), SV_CheckBottom(), SV_Ent_Create_f(), SV_Ent_Remove_f(), SV_movestep(), SV_NudgeOutOfSolid_PivotIsKnownGood(), SV_PushEntity(), SV_PushMove(), SV_SetIdealPitch(), SV_Trace_Toss(), SV_UserFriction(), SV_WalkMove(), V_CalcRefdefUsing(), VM_CL_checkbottom(), VM_CL_droptofloor(), VM_SV_aim(), and VM_SV_droptofloor().
|
extern |
Definition at line 15 of file collision.c.
Referenced by Collision_Init(), VM_CL_tracebox(), and VM_SV_tracebox().
|
extern |
Definition at line 16 of file collision.c.
Referenced by Collision_Init(), VM_CL_traceline(), and VM_SV_traceline().
|
extern |
Definition at line 13 of file collision.c.
Referenced by Collision_Init(), Collision_TraceBrushBrushFloat(), Collision_TraceLineBrushFloat(), Collision_TraceLineTriangleFloat(), Mod_Q1BSP_RecursiveHullCheck(), and Mod_Q1BSP_TraceLineAgainstSurfacesFindTextureOnNode().