diff options
author | thilo <thilo@edf5b092-35ff-0310-97b2-ce42778d08ea> | 2008-04-27 17:32:14 +0000 |
---|---|---|
committer | thilo <thilo@edf5b092-35ff-0310-97b2-ce42778d08ea> | 2008-04-27 17:32:14 +0000 |
commit | a1757f0abe8b9780d4c85415bc0fc9af1af31ff2 (patch) | |
tree | a84aba4e58244abb55e324cda0fdd04774ce1cca /code/renderer/tr_local.h | |
parent | 7eec87380d6b4bbf0ffa4f8ea258b8853c0428bc (diff) | |
download | ioquake3-aero-a1757f0abe8b9780d4c85415bc0fc9af1af31ff2.tar.gz ioquake3-aero-a1757f0abe8b9780d4c85415bc0fc9af1af31ff2.zip |
- Implement stereo rendering with anaglyph images.
- Add r_greyscale for black&white rendering
git-svn-id: svn://svn.icculus.org/quake3/trunk@1328 edf5b092-35ff-0310-97b2-ce42778d08ea
Diffstat (limited to 'code/renderer/tr_local.h')
-rw-r--r-- | code/renderer/tr_local.h | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/code/renderer/tr_local.h b/code/renderer/tr_local.h index ec5ff91..d55c4d2 100644 --- a/code/renderer/tr_local.h +++ b/code/renderer/tr_local.h @@ -433,6 +433,8 @@ typedef struct { vec3_t vieworg; vec3_t viewaxis[3]; // transformation matrix + stereoFrame_t stereoFrame; + int time; // time in milliseconds for shader effects and other time dependent rendering issues int rdflags; // RDF_NOWORLDMODEL, etc @@ -504,6 +506,7 @@ typedef struct { cplane_t frustum[4]; vec3_t visBounds[2]; float zFar; + stereoFrame_t stereoFrame; } viewParms_t; @@ -996,6 +999,8 @@ extern cvar_t *r_verbose; // used for verbose debug spew extern cvar_t *r_ignoreFastPath; // allows us to ignore our Tess fast paths extern cvar_t *r_znear; // near Z clip plane +extern cvar_t *r_zproj; // z distance of projection plane +extern cvar_t *r_stereoSeparation; // separation of cameras for stereo rendering extern cvar_t *r_stencilbits; // number of desired stencil bits extern cvar_t *r_depthbits; // number of desired depth bits @@ -1088,6 +1093,11 @@ extern cvar_t *r_smp; extern cvar_t *r_showSmp; extern cvar_t *r_skipBackEnd; +extern cvar_t *r_stereoEnabled; +extern cvar_t *r_anaglyphMode; + +extern cvar_t *r_greyscale; + extern cvar_t *r_ignoreGLErrors; extern cvar_t *r_overBrightBits; @@ -1136,6 +1146,7 @@ int R_CullLocalBox (vec3_t bounds[2]); int R_CullPointAndRadius( vec3_t origin, float radius ); int R_CullLocalPointAndRadius( vec3_t origin, float radius ); +void R_SetupProjection(viewParms_t *dest, float zProj, qboolean computeFrustum); void R_RotateForEntity( const trRefEntity_t *ent, const viewParms_t *viewParms, orientationr_t *or ); /* @@ -1614,6 +1625,18 @@ typedef struct { qboolean motionJpeg; } videoFrameCommand_t; +typedef struct +{ + int commandId; + + GLboolean rgba[4]; +} colorMaskCommand_t; + +typedef struct +{ + int commandId; +} clearDepthCommand_t; + typedef enum { RC_END_OF_LIST, RC_SET_COLOR, @@ -1622,7 +1645,9 @@ typedef enum { RC_DRAW_BUFFER, RC_SWAP_BUFFERS, RC_SCREENSHOT, - RC_VIDEOFRAME + RC_VIDEOFRAME, + RC_COLORMASK, + RC_CLEARDEPTH } renderCommand_t; |