mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-05-30 08:20:40 +00:00
[renderer] Support multiple entity queues
While there's currently only the one still, this will allow the entities to be multiply queued for multi-pass rendering (eg, shadows). As the avoidance of putting an entity in the same queue more than once relies on the entity id, all entities now come from the scene (which is stored in cl_world in the client code for nq and qw), thus the extensive changes in the clients.
This commit is contained in:
parent
6573acbc74
commit
d69355f521
53 changed files with 741 additions and 618 deletions
|
@ -222,14 +222,10 @@ typedef struct client_state_s {
|
|||
char model_name[MAX_MODELS][MAX_QPATH];
|
||||
char sound_name[MAX_SOUNDS][MAX_QPATH];
|
||||
|
||||
struct model_s *model_precache[MAX_MODELS];
|
||||
struct sfx_s *sound_precache[MAX_SOUNDS];
|
||||
int nummodels;
|
||||
int numsounds;
|
||||
|
||||
struct plitem_s *edicts;
|
||||
struct plitem_s *worldspawn;
|
||||
|
||||
char levelname[40]; // for display on solo scoreboard
|
||||
int spectator;
|
||||
int playernum;
|
||||
|
@ -247,9 +243,7 @@ typedef struct client_state_s {
|
|||
int fbskins;
|
||||
|
||||
// refresh related state
|
||||
struct model_s *worldmodel; // cl_entitites[0].model
|
||||
int num_entities; // held in cl_entities array
|
||||
entity_t viewent; // the weapon model
|
||||
|
||||
int cdtrack; // cd audio
|
||||
|
||||
|
@ -288,10 +282,7 @@ extern struct cvar_s *cl_fb_players;
|
|||
|
||||
extern client_state_t cl;
|
||||
|
||||
typedef struct entitystateset_s DARRAY_TYPE (struct entity_state_s)
|
||||
entitystateset_t;
|
||||
extern entitystateset_t cl_static_entities;
|
||||
extern entity_t cl_entities[512];
|
||||
extern entity_t *cl_entities[512];
|
||||
extern byte cl_entity_valid[2][512];
|
||||
|
||||
extern qboolean nomaster;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue