raze-gles/polymer/eduke32/build/include/prlights.h
Plagman 9d10b0b087 polymer: add a prlight flag to make shadow-less spotlights
And hook it up to SE cstat 64 ('1' in mapster32). This disables both lightmaps
and shadow maps for the spotlight; please let me know if you have a usecase
where you want lightmaps but no shadow maps for specific lights.

git-svn-id: https://svn.eduke32.com/eduke32@3091 1a8010ca-5511-0410-912e-c29ae57300e0
2012-10-21 03:41:13 +00:00

43 lines
1.2 KiB
C

// LIGHTS
#ifndef _prlight_h_
# define _prlight_h_
#define PR_MAXLIGHTS 1024
#define SHADOW_DEPTH_OFFSET 30
#define PR_MAXLIGHTPRIORITY 6
typedef struct s_prplanelist {
struct s_prplane* plane;
struct s_prplanelist* n;
} _prplanelist;
#pragma pack(push,1)
typedef struct s_prlight {
int32_t x, y, z, horiz, range;
int16_t angle, faderadius, radius, sector;
uint8_t color[3], priority;
int8_t minshade, maxshade;
int16_t tilenum;
struct {
int32_t emitshadow : 1;
} publicflags;
// internal members
float proj[16];
float transform[16];
float frustum[5 * 4];
int32_t rtindex;
struct {
int32_t active : 1;
int32_t invalidate : 1;
int32_t isinview : 1;
} flags;
uint32_t lightmap;
_prplanelist* planelist;
int32_t planecount;
} _prlight;
extern _prlight prlights[PR_MAXLIGHTS];
extern int32_t lightcount;
#pragma pack(pop)
#endif