Static entities seem to get decals allowed:
/*
=====================
CL_ParseStatic
=====================
*/
static void CL_ParseStatic (int large)
{
entity_t *ent;
if (cl.num_static_entities >= cl.max_static_entities)
Host_Error ("Too many static entities");
ent = &cl.static_entities[cl.num_static_entities++];
CL_ParseBaseline (ent, large);
if (ent->state_baseline.modelindex == 0)
{
Con_DPrintf("svc_parsestatic: static entity without model at %f %f %f\n", ent->state_baseline.origin[0], ent->state_baseline.origin[1], ent->state_baseline.origin[2]);
cl.num_static_entities--;
// This is definitely a cheesy way to conserve resources...
return;
}
// copy it to the current state
ent->render.model = CL_GetModelByIndex(ent->state_baseline.modelindex);
ent->render.framegroupblend[0].frame = ent->state_baseline.frame;
ent->render.framegroupblend[0].lerp = 1;
// make torchs play out of sync
ent->render.framegroupblend[0].start = lhrandom(-10, -1);
ent->render.skinnum = ent->state_baseline.skin;
ent->render.effects = ent->state_baseline.effects;
ent->render.alpha = 1;
//VectorCopy (ent->state_baseline.origin, ent->render.origin);
//VectorCopy (ent->state_baseline.angles, ent->render.angles);
Matrix4x4_CreateFromQuakeEntity(&ent->render.matrix, ent->state_baseline.origin[0], ent->state_baseline.origin[1], ent->state_baseline.origin[2], ent->state_baseline.angles[0], ent->state_baseline.angles[1], ent->state_baseline.angles[2], 1);
ent->render.allowdecals = true;
CL_UpdateRenderEntity(&ent->render);
}
" Mr. Bougo Offline
Author of commit e128932
*******
Posts: 4,316
Joined: Mar 2010
Reputation: 108
RE: QuakeWiki revival
I believe the static entities are the brush-based ones. Like lifts, doors, perhaps some trigger brushes, etc.
EDIT: And, since 2010, DP supports 256 static entities when compiled with SMALLMEMORY #define'd, but 1024 otherwise. "
/*
=====================
CL_ParseStatic
=====================
*/
static void CL_ParseStatic (int large)
{
entity_t *ent;
if (cl.num_static_entities >= cl.max_static_entities)
Host_Error ("Too many static entities");
ent = &cl.static_entities[cl.num_static_entities++];
CL_ParseBaseline (ent, large);
if (ent->state_baseline.modelindex == 0)
{
Con_DPrintf("svc_parsestatic: static entity without model at %f %f %f\n", ent->state_baseline.origin[0], ent->state_baseline.origin[1], ent->state_baseline.origin[2]);
cl.num_static_entities--;
// This is definitely a cheesy way to conserve resources...
return;
}
// copy it to the current state
ent->render.model = CL_GetModelByIndex(ent->state_baseline.modelindex);
ent->render.framegroupblend[0].frame = ent->state_baseline.frame;
ent->render.framegroupblend[0].lerp = 1;
// make torchs play out of sync
ent->render.framegroupblend[0].start = lhrandom(-10, -1);
ent->render.skinnum = ent->state_baseline.skin;
ent->render.effects = ent->state_baseline.effects;
ent->render.alpha = 1;
//VectorCopy (ent->state_baseline.origin, ent->render.origin);
//VectorCopy (ent->state_baseline.angles, ent->render.angles);
Matrix4x4_CreateFromQuakeEntity(&ent->render.matrix, ent->state_baseline.origin[0], ent->state_baseline.origin[1], ent->state_baseline.origin[2], ent->state_baseline.angles[0], ent->state_baseline.angles[1], ent->state_baseline.angles[2], 1);
ent->render.allowdecals = true;
CL_UpdateRenderEntity(&ent->render);
}
" Mr. Bougo Offline
Author of commit e128932
*******
Posts: 4,316
Joined: Mar 2010
Reputation: 108
RE: QuakeWiki revival
I believe the static entities are the brush-based ones. Like lifts, doors, perhaps some trigger brushes, etc.
EDIT: And, since 2010, DP supports 256 static entities when compiled with SMALLMEMORY #define'd, but 1024 otherwise. "
Comment