halflife-photomode/utils/light/light.h

60 lines
1.2 KiB
C

//========= Copyright © 1996-2002, Valve LLC, All rights reserved. ============
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================
#include "cmdlib.h"
#include "mathlib.h"
#include "bspfile.h"
#include "threads.h"
#define DEFAULTLIGHTLEVEL 300
typedef struct entity_s
{
char classname[64];
vec3_t origin;
float angle;
vec3_t light;
int style;
qboolean targetent;
vec3_t targetorigin;
} lightentity_t;
extern lightentity_t lightentities[MAX_MAP_ENTITIES];
extern int numlightentities;
#define LIGHT_ON_EPSILON 0.1
#define MAXLIGHTS 1024
void LoadNodes(char* file);
qboolean TestLine(vec3_t start, vec3_t stop);
void LightFace(int surfnum);
void LightLeaf(dleaf_t* leaf);
void MakeTnodes();
extern float scaledist;
extern float scalecos;
extern float rangescale;
extern int c_culldistplane, c_proper;
byte* GetFileSpace(int size);
extern byte* filebase;
extern vec3_t bsp_origin;
extern vec3_t bsp_xvector;
extern vec3_t bsp_yvector;
void TransformSample(vec3_t in, vec3_t out);
void RotateSample(vec3_t in, vec3_t out);
extern qboolean extrasamples;
extern float minlights[MAX_MAP_FACES];