⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 enable.c

📁 Mesa is an open-source implementation of the OpenGL specification - a system for rendering interacti
💻 C
📖 第 1 页 / 共 4 页
字号:
	 return ctx->Eval.AutoNormal;      case GL_BLEND:         return ctx->Color.BlendEnabled;      case GL_CLIP_PLANE0:      case GL_CLIP_PLANE1:      case GL_CLIP_PLANE2:      case GL_CLIP_PLANE3:      case GL_CLIP_PLANE4:      case GL_CLIP_PLANE5:	 return (ctx->Transform.ClipPlanesEnabled >> (cap - GL_CLIP_PLANE0)) & 1;      case GL_COLOR_MATERIAL:	 return ctx->Light.ColorMaterialEnabled;      case GL_CULL_FACE:         return ctx->Polygon.CullFlag;      case GL_DEPTH_TEST:         return ctx->Depth.Test;      case GL_DITHER:	 return ctx->Color.DitherFlag;      case GL_FOG:	 return ctx->Fog.Enabled;      case GL_LIGHTING:         return ctx->Light.Enabled;      case GL_LIGHT0:      case GL_LIGHT1:      case GL_LIGHT2:      case GL_LIGHT3:      case GL_LIGHT4:      case GL_LIGHT5:      case GL_LIGHT6:      case GL_LIGHT7:         return ctx->Light.Light[cap-GL_LIGHT0].Enabled;      case GL_LINE_SMOOTH:	 return ctx->Line.SmoothFlag;      case GL_LINE_STIPPLE:	 return ctx->Line.StippleFlag;      case GL_INDEX_LOGIC_OP:	 return ctx->Color.IndexLogicOpEnabled;      case GL_COLOR_LOGIC_OP:	 return ctx->Color.ColorLogicOpEnabled;      case GL_MAP1_COLOR_4:	 return ctx->Eval.Map1Color4;      case GL_MAP1_INDEX:	 return ctx->Eval.Map1Index;      case GL_MAP1_NORMAL:	 return ctx->Eval.Map1Normal;      case GL_MAP1_TEXTURE_COORD_1:	 return ctx->Eval.Map1TextureCoord1;      case GL_MAP1_TEXTURE_COORD_2:	 return ctx->Eval.Map1TextureCoord2;      case GL_MAP1_TEXTURE_COORD_3:	 return ctx->Eval.Map1TextureCoord3;      case GL_MAP1_TEXTURE_COORD_4:	 return ctx->Eval.Map1TextureCoord4;      case GL_MAP1_VERTEX_3:	 return ctx->Eval.Map1Vertex3;      case GL_MAP1_VERTEX_4:	 return ctx->Eval.Map1Vertex4;      case GL_MAP2_COLOR_4:	 return ctx->Eval.Map2Color4;      case GL_MAP2_INDEX:	 return ctx->Eval.Map2Index;      case GL_MAP2_NORMAL:	 return ctx->Eval.Map2Normal;      case GL_MAP2_TEXTURE_COORD_1:	 return ctx->Eval.Map2TextureCoord1;      case GL_MAP2_TEXTURE_COORD_2:	 return ctx->Eval.Map2TextureCoord2;      case GL_MAP2_TEXTURE_COORD_3:	 return ctx->Eval.Map2TextureCoord3;      case GL_MAP2_TEXTURE_COORD_4:	 return ctx->Eval.Map2TextureCoord4;      case GL_MAP2_VERTEX_3:	 return ctx->Eval.Map2Vertex3;      case GL_MAP2_VERTEX_4:	 return ctx->Eval.Map2Vertex4;      case GL_NORMALIZE:	 return ctx->Transform.Normalize;      case GL_POINT_SMOOTH:	 return ctx->Point.SmoothFlag;      case GL_POLYGON_SMOOTH:	 return ctx->Polygon.SmoothFlag;      case GL_POLYGON_STIPPLE:	 return ctx->Polygon.StippleFlag;      case GL_POLYGON_OFFSET_POINT:	 return ctx->Polygon.OffsetPoint;      case GL_POLYGON_OFFSET_LINE:	 return ctx->Polygon.OffsetLine;      case GL_POLYGON_OFFSET_FILL:      /*case GL_POLYGON_OFFSET_EXT:*/	 return ctx->Polygon.OffsetFill;      case GL_RESCALE_NORMAL_EXT:         return ctx->Transform.RescaleNormals;      case GL_SCISSOR_TEST:	 return ctx->Scissor.Enabled;      case GL_SHARED_TEXTURE_PALETTE_EXT:         return ctx->Texture.SharedPalette;      case GL_STENCIL_TEST:	 return ctx->Stencil.Enabled;      case GL_TEXTURE_1D:         return is_texture_enabled(ctx, TEXTURE_1D_BIT);      case GL_TEXTURE_2D:         return is_texture_enabled(ctx, TEXTURE_2D_BIT);      case GL_TEXTURE_3D:         return is_texture_enabled(ctx, TEXTURE_3D_BIT);      case GL_TEXTURE_GEN_Q:         {            const struct gl_texture_unit *texUnit;            texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];            return (texUnit->TexGenEnabled & Q_BIT) ? GL_TRUE : GL_FALSE;         }      case GL_TEXTURE_GEN_R:         {            const struct gl_texture_unit *texUnit;            texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];            return (texUnit->TexGenEnabled & R_BIT) ? GL_TRUE : GL_FALSE;         }      case GL_TEXTURE_GEN_S:         {            const struct gl_texture_unit *texUnit;            texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];            return (texUnit->TexGenEnabled & S_BIT) ? GL_TRUE : GL_FALSE;         }      case GL_TEXTURE_GEN_T:         {            const struct gl_texture_unit *texUnit;            texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];            return (texUnit->TexGenEnabled & T_BIT) ? GL_TRUE : GL_FALSE;         }      /*       * CLIENT STATE!!!       */      case GL_VERTEX_ARRAY:         return (ctx->Array.ArrayObj->Vertex.Enabled != 0);      case GL_NORMAL_ARRAY:         return (ctx->Array.ArrayObj->Normal.Enabled != 0);      case GL_COLOR_ARRAY:         return (ctx->Array.ArrayObj->Color.Enabled != 0);      case GL_INDEX_ARRAY:         return (ctx->Array.ArrayObj->Index.Enabled != 0);      case GL_TEXTURE_COORD_ARRAY:         return (ctx->Array.ArrayObj->TexCoord[ctx->Array.ActiveTexture].Enabled != 0);      case GL_EDGE_FLAG_ARRAY:         return (ctx->Array.ArrayObj->EdgeFlag.Enabled != 0);      case GL_FOG_COORDINATE_ARRAY_EXT:         CHECK_EXTENSION(EXT_fog_coord);         return (ctx->Array.ArrayObj->FogCoord.Enabled != 0);      case GL_SECONDARY_COLOR_ARRAY_EXT:         CHECK_EXTENSION(EXT_secondary_color);         return (ctx->Array.ArrayObj->SecondaryColor.Enabled != 0);      /* GL_EXT_histogram */      case GL_HISTOGRAM:         CHECK_EXTENSION(EXT_histogram);         return ctx->Pixel.HistogramEnabled;      case GL_MINMAX:         CHECK_EXTENSION(EXT_histogram);         return ctx->Pixel.MinMaxEnabled;      /* GL_SGI_color_table */      case GL_COLOR_TABLE_SGI:         CHECK_EXTENSION(SGI_color_table);         return ctx->Pixel.ColorTableEnabled[COLORTABLE_PRECONVOLUTION];      case GL_POST_CONVOLUTION_COLOR_TABLE_SGI:         CHECK_EXTENSION(SGI_color_table);         return ctx->Pixel.ColorTableEnabled[COLORTABLE_POSTCONVOLUTION];      case GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI:         CHECK_EXTENSION(SGI_color_table);         return ctx->Pixel.ColorTableEnabled[COLORTABLE_POSTCOLORMATRIX];      /* GL_SGI_texture_color_table */      case GL_TEXTURE_COLOR_TABLE_SGI:         CHECK_EXTENSION(SGI_texture_color_table);         return ctx->Texture.Unit[ctx->Texture.CurrentUnit].ColorTableEnabled;      /* GL_EXT_convolution */      case GL_CONVOLUTION_1D:         CHECK_EXTENSION(EXT_convolution);         return ctx->Pixel.Convolution1DEnabled;      case GL_CONVOLUTION_2D:         CHECK_EXTENSION(EXT_convolution);         return ctx->Pixel.Convolution2DEnabled;      case GL_SEPARABLE_2D:         CHECK_EXTENSION(EXT_convolution);         return ctx->Pixel.Separable2DEnabled;      /* GL_ARB_texture_cube_map */      case GL_TEXTURE_CUBE_MAP_ARB:         CHECK_EXTENSION(ARB_texture_cube_map);         return is_texture_enabled(ctx, TEXTURE_CUBE_BIT);      /* GL_EXT_secondary_color */      case GL_COLOR_SUM_EXT:         CHECK_EXTENSION2(EXT_secondary_color, ARB_vertex_program);         return ctx->Fog.ColorSumEnabled;      /* GL_ARB_multisample */      case GL_MULTISAMPLE_ARB:         CHECK_EXTENSION(ARB_multisample);         return ctx->Multisample.Enabled;      case GL_SAMPLE_ALPHA_TO_COVERAGE_ARB:         CHECK_EXTENSION(ARB_multisample);         return ctx->Multisample.SampleAlphaToCoverage;      case GL_SAMPLE_ALPHA_TO_ONE_ARB:         CHECK_EXTENSION(ARB_multisample);         return ctx->Multisample.SampleAlphaToOne;      case GL_SAMPLE_COVERAGE_ARB:         CHECK_EXTENSION(ARB_multisample);         return ctx->Multisample.SampleCoverage;      case GL_SAMPLE_COVERAGE_INVERT_ARB:         CHECK_EXTENSION(ARB_multisample);         return ctx->Multisample.SampleCoverageInvert;      /* GL_IBM_rasterpos_clip */      case GL_RASTER_POSITION_UNCLIPPED_IBM:         CHECK_EXTENSION(IBM_rasterpos_clip);         return ctx->Transform.RasterPositionUnclipped;      /* GL_NV_point_sprite */      case GL_POINT_SPRITE_NV:         CHECK_EXTENSION2(NV_point_sprite, ARB_point_sprite)         return ctx->Point.PointSprite;#if FEATURE_NV_vertex_program || FEATURE_ARB_vertex_program      case GL_VERTEX_PROGRAM_ARB:         CHECK_EXTENSION2(ARB_vertex_program, NV_vertex_program);         return ctx->VertexProgram.Enabled;      case GL_VERTEX_PROGRAM_POINT_SIZE_ARB:         CHECK_EXTENSION2(ARB_vertex_program, NV_vertex_program);         return ctx->VertexProgram.PointSizeEnabled;      case GL_VERTEX_PROGRAM_TWO_SIDE_ARB:         CHECK_EXTENSION2(ARB_vertex_program, NV_vertex_program);         return ctx->VertexProgram.TwoSideEnabled;#endif#if FEATURE_NV_vertex_program      case GL_VERTEX_ATTRIB_ARRAY0_NV:      case GL_VERTEX_ATTRIB_ARRAY1_NV:      case GL_VERTEX_ATTRIB_ARRAY2_NV:      case GL_VERTEX_ATTRIB_ARRAY3_NV:      case GL_VERTEX_ATTRIB_ARRAY4_NV:      case GL_VERTEX_ATTRIB_ARRAY5_NV:      case GL_VERTEX_ATTRIB_ARRAY6_NV:      case GL_VERTEX_ATTRIB_ARRAY7_NV:      case GL_VERTEX_ATTRIB_ARRAY8_NV:      case GL_VERTEX_ATTRIB_ARRAY9_NV:      case GL_VERTEX_ATTRIB_ARRAY10_NV:      case GL_VERTEX_ATTRIB_ARRAY11_NV:      case GL_VERTEX_ATTRIB_ARRAY12_NV:      case GL_VERTEX_ATTRIB_ARRAY13_NV:      case GL_VERTEX_ATTRIB_ARRAY14_NV:      case GL_VERTEX_ATTRIB_ARRAY15_NV:         CHECK_EXTENSION(NV_vertex_program);         {            GLint n = (GLint) cap - GL_VERTEX_ATTRIB_ARRAY0_NV;            return (ctx->Array.ArrayObj->VertexAttrib[n].Enabled != 0);         }      case GL_MAP1_VERTEX_ATTRIB0_4_NV:      case GL_MAP1_VERTEX_ATTRIB1_4_NV:      case GL_MAP1_VERTEX_ATTRIB2_4_NV:      case GL_MAP1_VERTEX_ATTRIB3_4_NV:      case GL_MAP1_VERTEX_ATTRIB4_4_NV:      case GL_MAP1_VERTEX_ATTRIB5_4_NV:      case GL_MAP1_VERTEX_ATTRIB6_4_NV:      case GL_MAP1_VERTEX_ATTRIB7_4_NV:      case GL_MAP1_VERTEX_ATTRIB8_4_NV:      case GL_MAP1_VERTEX_ATTRIB9_4_NV:      case GL_MAP1_VERTEX_ATTRIB10_4_NV:      case GL_MAP1_VERTEX_ATTRIB11_4_NV:      case GL_MAP1_VERTEX_ATTRIB12_4_NV:      case GL_MAP1_VERTEX_ATTRIB13_4_NV:      case GL_MAP1_VERTEX_ATTRIB14_4_NV:      case GL_MAP1_VERTEX_ATTRIB15_4_NV:         CHECK_EXTENSION(NV_vertex_program);         {            const GLuint map = (GLuint) (cap - GL_MAP1_VERTEX_ATTRIB0_4_NV);            return ctx->Eval.Map1Attrib[map];         }      case GL_MAP2_VERTEX_ATTRIB0_4_NV:      case GL_MAP2_VERTEX_ATTRIB1_4_NV:      case GL_MAP2_VERTEX_ATTRIB2_4_NV:      case GL_MAP2_VERTEX_ATTRIB3_4_NV:      case GL_MAP2_VERTEX_ATTRIB4_4_NV:      case GL_MAP2_VERTEX_ATTRIB5_4_NV:      case GL_MAP2_VERTEX_ATTRIB6_4_NV:      case GL_MAP2_VERTEX_ATTRIB7_4_NV:      case GL_MAP2_VERTEX_ATTRIB8_4_NV:      case GL_MAP2_VERTEX_ATTRIB9_4_NV:      case GL_MAP2_VERTEX_ATTRIB10_4_NV:      case GL_MAP2_VERTEX_ATTRIB11_4_NV:      case GL_MAP2_VERTEX_ATTRIB12_4_NV:      case GL_MAP2_VERTEX_ATTRIB13_4_NV:      case GL_MAP2_VERTEX_ATTRIB14_4_NV:      case GL_MAP2_VERTEX_ATTRIB15_4_NV:         CHECK_EXTENSION(NV_vertex_program);         {            const GLuint map = (GLuint) (cap - GL_MAP2_VERTEX_ATTRIB0_4_NV);            return ctx->Eval.Map2Attrib[map];         }#endif /* FEATURE_NV_vertex_program */#if FEATURE_NV_fragment_program      case GL_FRAGMENT_PROGRAM_NV:         CHECK_EXTENSION(NV_fragment_program);         return ctx->FragmentProgram.Enabled;#endif /* FEATURE_NV_fragment_program */      /* GL_NV_texture_rectangle */      case GL_TEXTURE_RECTANGLE_NV:         CHECK_EXTENSION(NV_texture_rectangle);         return is_texture_enabled(ctx, TEXTURE_RECT_BIT);      /* GL_EXT_stencil_two_side */      case GL_STENCIL_TEST_TWO_SIDE_EXT:         CHECK_EXTENSION(EXT_stencil_two_side);         return ctx->Stencil.TestTwoSide;#if FEATURE_ARB_fragment_program      case GL_FRAGMENT_PROGRAM_ARB:         return ctx->FragmentProgram.Enabled;#endif /* FEATURE_ARB_fragment_program */      /* GL_EXT_depth_bounds_test */      case GL_DEPTH_BOUNDS_TEST_EXT:         CHECK_EXTENSION(EXT_depth_bounds_test);         return ctx->Depth.BoundsTest;      /* GL_MESA_program_debug */      case GL_FRAGMENT_PROGRAM_CALLBACK_MESA:         CHECK_EXTENSION(MESA_program_debug);         return ctx->FragmentProgram.CallbackEnabled;      case GL_VERTEX_PROGRAM_CALLBACK_MESA:         CHECK_EXTENSION(MESA_program_debug);         return ctx->VertexProgram.CallbackEnabled;#if FEATURE_ATI_fragment_shader      case GL_FRAGMENT_SHADER_ATI:	 CHECK_EXTENSION(ATI_fragment_shader);	 return ctx->ATIFragmentShader.Enabled;#endif /* FEATURE_ATI_fragment_shader */      default:         _mesa_error(ctx, GL_INVALID_ENUM, "glIsEnabled(0x%x)", (int) cap);	 return GL_FALSE;   }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -