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.
52 lines
1.7 KiB
52 lines
1.7 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $Workfile: $ |
|
// $Date: $ |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef GL_LIGHTMAP_H |
|
#define GL_LIGHTMAP_H |
|
|
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
#include "surfacehandle.h" |
|
|
|
#define MAX_LIGHTMAPS 256 |
|
|
|
// NOTE: This is used for a hack that deals with viewmodels creating dlights |
|
// behind walls |
|
#define DLIGHT_BEHIND_PLANE_DIST -15 |
|
|
|
extern bool g_RebuildLightmaps; |
|
|
|
extern int r_dlightactive; |
|
|
|
// Marks dlights as visible or not visible |
|
void R_MarkDLightVisible( int dlight ); |
|
void R_MarkDLightNotVisible( int dlight ); |
|
|
|
// Must call these at the start + end of rendering each view |
|
void R_DLightStartView(); |
|
void R_DLightEndView(); |
|
|
|
// Can we use another dynamic light, or is it just too expensive? |
|
bool R_CanUseVisibleDLight( int dlight ); |
|
|
|
struct msurfacelighting_t; |
|
|
|
void R_AddDynamicLights( SurfaceHandle_t surfID, msurfacelighting_t *pLighting, const matrix3x4_t& entityToWorld ); |
|
void R_BuildLightMap( struct dlight_t *pLights, class ICallQueue *pCallQueue, SurfaceHandle_t surfID, const matrix3x4_t& entityToWorld ); |
|
void R_RedownloadAllLightmaps(); |
|
void GL_RebuildLightmaps( void ); |
|
void FASTCALL R_RenderDynamicLightmaps( dlight_t *pLights, ICallQueue *pCallQueue, SurfaceHandle_t surfID, const matrix3x4_t& entityToWorld ); |
|
int R_AddLightmapPolyChain( SurfaceHandle_t surfID ); |
|
int R_AddLightmapSurfaceChain( SurfaceHandle_t surfID ); |
|
void R_SetLightmapBlendingMode( void ); |
|
|
|
extern Vector4D blocklights[NUM_BUMP_VECTS+1][ MAX_LIGHTMAP_DIM_INCLUDING_BORDER * MAX_LIGHTMAP_DIM_INCLUDING_BORDER ]; |
|
|
|
#endif // GL_LIGHTMAP_H
|
|
|