TENEBRAE GFX DLIGHTS

From Quake Wiki

Fields:

.float light_lev; // Radius (does not affect brightness), typical value 350
.vector color;    // Color (does not affect radius), typical value '1 1 1'
                  // (bright white), can be up to '255 255 255' (nuclear blast)
.float style;     // Light style (like normal light entities, flickering torches or
                  // switchable, etc)
.float pflags;    // Flags (see PFLAGS_ constants)
.vector angles;   // Orientation of the light
.float skin;      // Cubemap filter number, can be 1-255 (0 is assumed to be none,
                  // and tenebrae only allows 16-255), this selects a projective light
                  // filter, a value of 1 loads cubemaps/1posx.tga and cubemaps/1negx.tga
                  // and posy, negy, posz, and negz, similar to skybox but some sides
                  // need to be rotated or flipped

Constants:

float PFLAGS_NOSHADOW = 1; // light does not cast shadows
float PFLAGS_CORONA = 2; // light has a corona flare
float PFLAGS_FULLDYNAMIC = 128; // light enable (without this set no light is produced!)

More powerful dynamic light settings

Warning: it is best not to use cubemaps on a light entity that has a model, as using a skin number that a model does not have will cause issues in glquake, and produce warnings in darkplaces (use developer 1 to see them).

Changes compared to tenebrae:

  • EF_FULLDYNAMIC effects flag replaced by PFLAGS_FULLDYNAMIC flag (EF_FULLDYNAMIC conflicts with EF_NODRAW)

Note: networking should send entities with PFLAGS_FULLDYNAMIC set even if they have no model (lights in general do not have a model, nor should they)