mirror of
https://github.com/ioquake/ioq3.git
synced 2024-11-10 07:11:46 +00:00
OpenGL2 don't try to dlight surfaces that had all dlights culled
In the renderers, dlightbits are never cleared from world surfaces. The dlight image does not repeat, so if it draws on extra surfaces it's not visible. However if using a repeating image (tr.defaultImage instead of tr.dlightImage); * In OpenGL1 image is only drawn on surfaces close to dlight origin. * In OpenGL2 image is draw on surfaces clearly outside the dlight radius, including past non-dlighted surfaces. It seems there was a similar issue with pshadowBits. So update surface dlightBits even if 0, like already done for pshadowBits. This causes only surfaces close to origin to be affected. (Though it is a little farther than in OpenGL1.) I have no idea why this isn't a problem in OpenGL1.
This commit is contained in:
parent
af79d2cb38
commit
95b241b8ba
1 changed files with 1 additions and 1 deletions
|
@ -330,7 +330,7 @@ static void R_AddWorldSurface( msurface_t *surf, int dlightBits, int pshadowBits
|
|||
}
|
||||
|
||||
// check for dlighting
|
||||
if ( dlightBits ) {
|
||||
/*if ( dlightBits ) */{
|
||||
dlightBits = R_DlightSurface( surf, dlightBits );
|
||||
dlightBits = ( dlightBits != 0 );
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue