aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--code/renderer/tr_main.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/code/renderer/tr_main.c b/code/renderer/tr_main.c
index e90ec33..9d4edef 100644
--- a/code/renderer/tr_main.c
+++ b/code/renderer/tr_main.c
@@ -513,19 +513,22 @@ R_SetupProjection
void R_SetupProjection(viewParms_t *dest, float zProj, qboolean computeFrustum)
{
float xmin, xmax, ymin, ymax;
- float width, height, stereoSep;
+ float width, height, stereoSep = r_stereoSeparation->value;
/*
* offset the view origin of the viewer for stereo rendering
* by setting the projection matrix appropriately.
*/
- if(dest->stereoFrame == STEREO_LEFT)
- stereoSep = zProj / r_stereoSeparation->value;
- else if(dest->stereoFrame == STEREO_RIGHT)
- stereoSep = zProj / -r_stereoSeparation->value;
- else
- stereoSep = 0;
+ if(stereoSep != 0)
+ {
+ if(dest->stereoFrame == STEREO_LEFT)
+ stereoSep = zProj / stereoSep;
+ else if(dest->stereoFrame == STEREO_RIGHT)
+ stereoSep = zProj / stereoSep;
+ else
+ stereoSep = 0;
+ }
ymax = zProj * tan(dest->fovY * M_PI / 360.0f);
ymin = -ymax;