icculus quake2 doxygen
1.0 dev
|
|
Go to the documentation of this file.
36 #define STRUCT_FROM_LINK(l,t,m) ((t *)((byte *)l - (int)&(((t *)0)->m)))
38 #define EDICT_FROM_AREA(l) STRUCT_FROM_LINK(l,edict_t,area)
94 vec3_t mins1, maxs1, mins2, maxs2;
110 if (size[0] > size[1])
115 anode->
dist = 0.5 * (maxs[anode->
axis] + mins[anode->
axis]);
164 #define MAX_TOTAL_ENT_LEAFS 128
197 j = (-ent->
mins[2])/8;
204 k = (ent->
maxs[2]+32)/8;
210 ent->
s.
solid = (k<<10) | (
j<<5) |
i;
227 for (
i=0 ;
i<3 ;
i++)
236 for (
i=0 ;
i<3 ;
i++)
267 for (
i=0 ;
i<num_leafs ;
i++)
277 Com_DPrintf (
"Object touching 3 areas at %f %f %f\n",
294 for (
i=0 ;
i<num_leafs ;
i++)
296 if (clusters[
i] == -1)
298 for (
j=0 ;
j<
i ;
j++)
299 if (clusters[
j] == clusters[
i])
329 if (node->
axis == -1)
368 for (l=start->
next ; l != start ; l = next)
393 if (node->
axis == -1)
409 int maxcount,
int areatype)
445 for (
i=0 ;
i<num ;
i++)
530 for (
i=0 ;
i<num ;
i++)
532 touch = touchlist[
i];
593 boxmins[0] = boxmins[1] = boxmins[2] = -9999;
594 boxmaxs[0] = boxmaxs[1] = boxmaxs[2] = 9999;
598 for (
i=0 ;
i<3 ;
i++)
600 if (end[
i] > start[
i])
602 boxmins[
i] = start[
i] + mins[
i] - 1;
603 boxmaxs[
i] = end[
i] + maxs[
i] + 1;
607 boxmins[
i] = end[
i] + mins[
i] - 1;
608 boxmaxs[
i] = start[
i] + maxs[
i] + 1;
void SV_TraceBounds(vec3_t start, vec3_t mins, vec3_t maxs, vec3_t end, vec3_t boxmins, vec3_t boxmaxs)
trace_t CM_BoxTrace(vec3_t start, vec3_t end, vec3_t mins, vec3_t maxs, int headnode, int brushmask)
#define VectorSubtract(a, b, c)
void InsertLinkBefore(link_t *l, link_t *before)
int SV_PointContents(vec3_t p)
#define CONTENTS_DEADMONSTER
#define MAX_TOTAL_ENT_LEAFS
#define EDICT_FROM_AREA(l)
int SV_HullForEntity(edict_t *ent)
int CM_TransformedPointContents(vec3_t p, int headnode, vec3_t origin, vec3_t angles)
void SV_AreaEdicts_r(areanode_t *node)
int clusternums[MAX_ENT_CLUSTERS]
void ClearLink(link_t *l)
int CM_LeafArea(int leafnum)
int SV_AreaEdicts(vec3_t mins, vec3_t maxs, edict_t **list, int maxcount, int areatype)
int CM_PointContents(vec3_t p, int headnode)
void RemoveLink(link_t *l)
struct cmodel_s * models[MAX_MODELS]
areanode_t sv_areanodes[AREA_NODES]
void Com_Error(int code, char *fmt,...)
int CM_BoxLeafnums(vec3_t mins, vec3_t maxs, int *list, int listsize, int *topnode)
#define VectorAdd(a, b, c)
void SV_ClipMoveToEntities(moveclip_t *clip)
struct areanode_s areanode_t
int CM_HeadnodeForBox(vec3_t mins, vec3_t maxs)
int CM_LeafCluster(int leafnum)
void SV_UnlinkEdict(edict_t *ent)
areanode_t * SV_CreateAreaNode(int depth, vec3_t mins, vec3_t maxs)
void SV_LinkEdict(edict_t *ent)
void Com_DPrintf(char *fmt,...)
trace_t SV_Trace(vec3_t start, vec3_t mins, vec3_t maxs, vec3_t end, edict_t *passedict, int contentmask)
void Com_Printf(char *fmt,...)
struct areanode_s * children[2]
trace_t CM_TransformedBoxTrace(vec3_t start, vec3_t end, vec3_t mins, vec3_t maxs, int headnode, int brushmask, vec3_t origin, vec3_t angles)