*/
// client.h
+#ifndef CLIENT_H
+#define CLIENT_H
+
typedef struct frameblend_s
{
int frame;
}
frameblend_t;
-// LordHavoc: nothing in this structure is persistant, it may be overwritten by the client every frame, for persistant data use entity_lerp_t.
+#define MAXENTLIGHTS 128
+
+// LordHavoc: disregard the following warning, entlights stuff is semi-persistent...
+// LordHavoc: nothing in this structure is persistent, it may be overwritten by the client every frame, for persistent data use entity_lerp_t.
typedef struct entity_render_s
{
// location
vec3_t mins, maxs;
// 4 frame numbers (-1 if not used) and their blending scalers (0-1), if interpolation is not desired, use frame instead
frameblend_t frameblend[4];
+
+ // caching results of static light traces (this is semi-persistent)
+ double entlightstime;
+ vec3_t entlightsorigin;
+ int numentlights;
+ unsigned short entlights[MAXENTLIGHTS];
}
entity_render_t;
cactive_t;
//
-// the client_static_t structure is persistant through an arbitrary number
+// the client_static_t structure is persistent through an arbitrary number
// of server connections
//
typedef struct
// refresh related state
struct model_s *worldmodel; // cl_entitites[0].model
-// int num_entities; // held in cl_entities array
int num_statics; // held in cl_staticentities array
entity_t viewent; // the gun model
#define PARTICLE_UPRIGHT_FACING 2
#define PARTICLE_ORIENTED_DOUBLESIDED 3
-/*
-typedef struct renderparticle_s
-{
- int tex;
- int orientation;
- int additive;
- int dynlight;
- float scalex;
- float scaley;
- float org[3];
- float dir[3];
- float color[4];
-}
-renderparticle_t;
-*/
-
void CL_Particles_Clear(void);
void CL_Particles_Init(void);
int numentities;
entity_render_t **entities;
- //int numparticles;
- //struct renderparticle_s *particles;
-
qbyte drawqueue[MAX_DRAWQUEUE];
int drawqueuesize;
}
extern mempool_t *cl_refdef_mempool;
#include "cgamevm.h"
+
+#endif
+