From 5f60a0b50ada1865d4fc6a724366e8ea0cc9a72f Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 6 Sep 2002 02:56:08 +0000 Subject: GL_EXT_stencil_two_side extension, not 100% complete yet. --- src/mesa/main/mtypes.h | 42 +++++++++++++++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 9 deletions(-) (limited to 'src/mesa/main/mtypes.h') diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 6f33ae6658..9934996886 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -1,4 +1,4 @@ -/* $Id: mtypes.h,v 1.84 2002/07/09 01:22:50 brianp Exp $ */ +/* $Id: mtypes.h,v 1.85 2002/09/06 02:56:09 brianp Exp $ */ /* * Mesa 3-D graphics library @@ -311,7 +311,11 @@ struct gl_accum_attrib { struct gl_colorbuffer_attrib { GLuint ClearIndex; /* Index to use for glClear */ +#if 1 GLchan ClearColor[4]; /* Color to use for glClear */ +#else + GLclampf ClearColor[4]; /* Color to use for glClear */ +#endif GLuint IndexMask; /* Color index write mask */ GLubyte ColorMask[4]; /* Each flag is 0xff or 0x0 */ @@ -323,7 +327,11 @@ struct gl_colorbuffer_attrib { /* alpha testing */ GLboolean AlphaEnabled; /* Alpha test enabled flag */ GLenum AlphaFunc; /* Alpha test function */ +#if 1 GLchan AlphaRef; /* Alpha ref value as GLchan */ +#else + GLclampf AlphaRef; +#endif /* blending */ GLboolean BlendEnabled; /* Blending enabled flag */ @@ -708,14 +716,16 @@ struct gl_scissor_attrib { struct gl_stencil_attrib { GLboolean Enabled; /* Enabled flag */ - GLenum Function; /* Stencil function */ - GLenum FailFunc; /* Fail function */ - GLenum ZPassFunc; /* Depth buffer pass function */ - GLenum ZFailFunc; /* Depth buffer fail function */ - GLstencil Ref; /* Reference value */ - GLstencil ValueMask; /* Value mask */ + GLboolean TestTwoSide; /* GL_EXT_stencil_two_side */ + GLubyte ActiveFace; /* GL_EXT_stencil_two_side (0 or 1) */ + GLenum Function[2]; /* Stencil function */ + GLenum FailFunc[2]; /* Fail function */ + GLenum ZPassFunc[2]; /* Depth buffer pass function */ + GLenum ZFailFunc[2]; /* Depth buffer fail function */ + GLstencil Ref[2]; /* Reference value */ + GLstencil ValueMask[2]; /* Value mask */ + GLstencil WriteMask[2]; /* Write mask */ GLstencil Clear; /* Clear value */ - GLstencil WriteMask; /* Write mask */ }; @@ -861,7 +871,10 @@ struct gl_texture_object { GLenum Target; /* GL_TEXTURE_1D, GL_TEXTURE_2D, etc. */ GLfloat Priority; /* in [0,1] */ GLfloat BorderValues[4]; /* unclamped */ +#if 1 + /* omit someday */ GLchan BorderColor[4]; /* clamped, as GLchan */ +#endif GLenum WrapS; /* Wrap modes are: GL_CLAMP, REPEAT */ GLenum WrapT; /* GL_CLAMP_TO_EDGE, and */ GLenum WrapR; /* GL_CLAMP_TO_BORDER_ARB */ @@ -874,7 +887,11 @@ struct gl_texture_object { GLfloat MaxAnisotropy; /* GL_EXT_texture_filter_anisotropic */ GLboolean CompareFlag; /* GL_SGIX_shadow */ GLenum CompareOperator; /* GL_SGIX_shadow */ +#if 1 GLchan ShadowAmbient; /* GL_SGIX/ARB_shadow_ambient */ +#else + GLfloat ShadowAmbient; +#endif GLenum CompareMode; /* GL_ARB_shadow */ GLenum CompareFunc; /* GL_ARB_shadow */ GLenum DepthMode; /* GL_ARB_depth_texture */ @@ -1310,11 +1327,17 @@ struct gl_frame_buffer { GLaccum *Accum; /* array [4*Width*Height] of GLaccum values */ /* Software alpha planes */ +#if 1 GLchan *FrontLeftAlpha; /* array [Width*Height] of GLubyte */ GLchan *BackLeftAlpha; /* array [Width*Height] of GLubyte */ GLchan *FrontRightAlpha; /* array [Width*Height] of GLubyte */ GLchan *BackRightAlpha; /* array [Width*Height] of GLubyte */ - +#else + GLvoid *FrontLeftAlpha; /* array [Width*Height] of GLubyte */ + GLvoid *BackLeftAlpha; /* array [Width*Height] of GLubyte */ + GLvoid *FrontRightAlpha; /* array [Width*Height] of GLubyte */ + GLvoid *BackRightAlpha; /* array [Width*Height] of GLubyte */ +#endif /* Drawing bounds: intersection of window size and scissor box */ GLint _Xmin, _Ymin; /* inclusive */ GLint _Xmax, _Ymax; /* exclusive */ @@ -1395,6 +1418,7 @@ struct gl_extensions { GLboolean EXT_secondary_color; GLboolean EXT_shared_texture_palette; GLboolean EXT_stencil_wrap; + GLboolean EXT_stencil_two_side; GLboolean EXT_texture3D; GLboolean EXT_texture_compression_s3tc; GLboolean EXT_texture_env_add; -- cgit v1.2.3