remove unused light_shadows.cpp
This commit is contained in:
parent
22dd3d1719
commit
7297e8758b
|
|
@ -1,127 +0,0 @@
|
|||
/*
|
||||
Copyright (C) 1999-2007 id Software, Inc. and contributors.
|
||||
For a list of contributors, see the accompanying CONTRIBUTORS file.
|
||||
|
||||
This file is part of GtkRadiant.
|
||||
|
||||
GtkRadiant is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
GtkRadiant is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GtkRadiant; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
#define LIGHT_SHADOWS_C
|
||||
|
||||
#include "light.h"
|
||||
#include "inout.h"
|
||||
|
||||
|
||||
|
||||
/* -------------------------------------------------------------------------------
|
||||
|
||||
ydnar: this code deals with shadow volume bsps
|
||||
|
||||
------------------------------------------------------------------------------- */
|
||||
|
||||
struct shadowNode_t
|
||||
{
|
||||
vec4_t plane;
|
||||
int children[ 2 ];
|
||||
};
|
||||
|
||||
int numShadowNodes;
|
||||
shadowNode_t *shadowNodes;
|
||||
|
||||
|
||||
|
||||
/*
|
||||
AddShadow()
|
||||
adds a shadow, returning the index into the shadow list
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
MakeShadowFromPoints()
|
||||
creates a shadow volume from 4 points (the first being the light origin)
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
SetupShadows()
|
||||
sets up the shadow volumes for all lights in the world
|
||||
*/
|
||||
|
||||
void SetupShadows( void ){
|
||||
int i, j, s;
|
||||
light_t *light;
|
||||
dleaf_t *leaf;
|
||||
dsurface_t *ds;
|
||||
surfaceInfo_t *info;
|
||||
shaderInfo_t *si;
|
||||
byte *tested;
|
||||
|
||||
|
||||
/* early out for weird cases where there are no lights */
|
||||
if ( lights == NULL ) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* note it */
|
||||
Sys_FPrintf( SYS_VRB, "--- SetupShadows ---\n" );
|
||||
|
||||
/* allocate a surface test list */
|
||||
tested = safe_malloc( numDrawSurfaces / 8 + 1 );
|
||||
|
||||
/* walk the list of lights */
|
||||
for ( light = lights; light != NULL; light = light->next )
|
||||
{
|
||||
/* do some early out testing */
|
||||
if ( light->cluster < 0 ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
/* clear surfacetest list */
|
||||
memset( tested, 0, numDrawSurfaces / 8 + 1 );
|
||||
|
||||
/* walk the bsp leaves */
|
||||
for ( i = 0, leaf = dleafs; i < numleafs; i++, leaf++ )
|
||||
{
|
||||
/* in pvs? */
|
||||
if ( !ClusterVisible( light->cluster, leaf->cluster ) ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
/* walk the surface list for this leaf */
|
||||
for ( j = 0; j < leaf->numLeafSurfaces; j++ )
|
||||
{
|
||||
/* don't filter a surface more than once */
|
||||
s = dleafsurfaces[ leaf->firstLeafSurface + j ];
|
||||
if ( tested[ s >> 3 ] & ( 1 << ( s & 7 ) ) ) {
|
||||
continue;
|
||||
}
|
||||
tested[ s >> 3 ] |= ( 1 << ( s & 7 ) );
|
||||
|
||||
/* get surface and info */
|
||||
ds = &drawSurfaces[ s ];
|
||||
info = &surfaceInfos[ s ];
|
||||
si = info->si;
|
||||
|
||||
/* don't create shadow volumes from translucent surfaces */
|
||||
if ( si->contents & CONTENTS_TRANSLUCENT ) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user