Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

62 lines
1.8 KiB

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//
//=============================================================================//
#ifndef R_LOCAL_H
#define R_LOCAL_H
#ifdef _WIN32
#pragma once
#endif
#include "surfacehandle.h"
#include "bspfile.h"
extern int r_framecount;
// NOTE: We store all 256 here so that 255 can be accessed easily...
extern int d_lightstylevalue[256]; // 8.8 fraction of base light value
extern int d_lightstyleframe[256]; // Frame when the light style value changed
extern int d_lightstylenumframes[256]; // number of frames in the lightstyle
extern ConVar r_lightmapcolorscale;
extern ConVar r_decals;
extern ConVar mp_decals;
extern ConVar r_lightmap;
extern ConVar r_lightstyle;
extern int r_dlightchanged; // which ones changed
extern int r_dlightactive; // which ones are active
extern VMatrix g_BrushToWorldMatrix;
class IClientEntity;
colorVec R_LightPoint (Vector& p);
// returns surfID
SurfaceHandle_t R_LightVec (const Vector& start, const Vector& end, bool bUseLightStyles, Vector& c, float *textureS = NULL, float *textureT = NULL, float *lightmapS = NULL, float *lightmapT = NULL);
// This is to allow us to do R_LightVec on a brush model
void R_LightVecUseModel(model_t* pModel = 0);
void R_InitStudio( void );
void R_LoadSkys (void);
void R_DecalInit ( void );
void R_AnimateLight (void);
void MarkDLightsOnStaticProps( void );
//-----------------------------------------------------------------------------
// Method to get at the light style value
//-----------------------------------------------------------------------------
inline float LightStyleValue( int style )
{
Assert( style >= 0 && style < MAX_LIGHTSTYLES );
return ( float )d_lightstylevalue[style] * (1.0f / 264.0f);
}
#endif // R_LOCAL_H