diff --git a/code/renderergl2/tr_backend.c b/code/renderergl2/tr_backend.c index be5fe61b..30b9c0b8 100644 --- a/code/renderergl2/tr_backend.c +++ b/code/renderergl2/tr_backend.c @@ -1185,18 +1185,18 @@ const void *RB_DrawSurfs( const void *data ) { FBO_Bind(tr.screenShadowFbo); - box[0] = (backEnd.refdef.x ) * tr.screenShadowFbo->width / (float)glConfig.vidWidth; - box[1] = (glConfig.vidHeight - ( backEnd.refdef.y + backEnd.refdef.height )) * tr.screenShadowFbo->height / (float)glConfig.vidHeight; - box[2] = (backEnd.refdef.width ) * tr.screenShadowFbo->width / (float)glConfig.vidWidth; - box[3] = (backEnd.refdef.height) * tr.screenShadowFbo->height / (float)glConfig.vidHeight; + box[0] = backEnd.viewParms.viewportX * tr.screenShadowFbo->width / (float)glConfig.vidWidth; + box[1] = backEnd.viewParms.viewportY * tr.screenShadowFbo->height / (float)glConfig.vidHeight; + box[2] = backEnd.viewParms.viewportWidth * tr.screenShadowFbo->width / (float)glConfig.vidWidth; + box[3] = backEnd.viewParms.viewportHeight * tr.screenShadowFbo->height / (float)glConfig.vidHeight; qglViewport(box[0], box[1], box[2], box[3]); qglScissor(box[0], box[1], box[2], box[3]); - box[0] = (backEnd.refdef.x ) / (float)glConfig.vidWidth; - box[1] = 1.0 - (backEnd.refdef.y + backEnd.refdef.height) / (float)glConfig.vidHeight; - box[2] = (backEnd.refdef.x + backEnd.refdef.width ) / (float)glConfig.vidWidth; - box[3] = 1.0 - (backEnd.refdef.y ) / (float)glConfig.vidHeight; + box[0] = backEnd.viewParms.viewportX / (float)glConfig.vidWidth; + box[1] = backEnd.viewParms.viewportY / (float)glConfig.vidHeight; + box[2] = box[0] + backEnd.viewParms.viewportWidth / (float)glConfig.vidWidth; + box[3] = box[1] - backEnd.viewParms.viewportHeight / (float)glConfig.vidHeight; texCoords[0][0] = box[0]; texCoords[0][1] = box[3]; texCoords[1][0] = box[2]; texCoords[1][1] = box[3];