📄 get.c
字号:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostConvolutionBias[3]);
break;
case GL_HISTOGRAM:
CHECK_EXTENSION_B(EXT_histogram, pname);
params[0] = ctx->Pixel.HistogramEnabled;
break;
case GL_MINMAX:
CHECK_EXTENSION_B(EXT_histogram, pname);
params[0] = ctx->Pixel.MinMaxEnabled;
break;
case GL_COLOR_TABLE_SGI:
CHECK_EXTENSION_B(SGI_color_table, pname);
params[0] = ctx->Pixel.ColorTableEnabled;
break;
case GL_POST_CONVOLUTION_COLOR_TABLE_SGI:
CHECK_EXTENSION_B(SGI_color_table, pname);
params[0] = ctx->Pixel.PostConvolutionColorTableEnabled;
break;
case GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI:
CHECK_EXTENSION_B(SGI_color_table, pname);
params[0] = ctx->Pixel.PostColorMatrixColorTableEnabled;
break;
case GL_TEXTURE_COLOR_TABLE_SGI:
CHECK_EXTENSION_B(SGI_texture_color_table, pname);
params[0] = ctx->Texture.Unit[ctx->Texture.CurrentUnit].ColorTableEnabled;
break;
case GL_COLOR_SUM_EXT:
CHECK_EXTENSION_B(EXT_secondary_color, pname);
params[0] = ctx->Fog.ColorSumEnabled;
break;
case GL_CURRENT_SECONDARY_COLOR_EXT:
CHECK_EXTENSION_B(EXT_secondary_color, pname);
{
FLUSH_CURRENT(ctx, 0);
params[0] = FLOAT_TO_BOOLEAN(ctx->Current.Attrib[VERT_ATTRIB_COLOR1][0]);
params[1] = FLOAT_TO_BOOLEAN(ctx->Current.Attrib[VERT_ATTRIB_COLOR1][1]);
params[2] = FLOAT_TO_BOOLEAN(ctx->Current.Attrib[VERT_ATTRIB_COLOR1][2]);
params[3] = FLOAT_TO_BOOLEAN(ctx->Current.Attrib[VERT_ATTRIB_COLOR1][3]);
}
break;
case GL_SECONDARY_COLOR_ARRAY_EXT:
CHECK_EXTENSION_B(EXT_secondary_color, pname);
params[0] = ctx->Array.SecondaryColor.Enabled;
break;
case GL_SECONDARY_COLOR_ARRAY_TYPE_EXT:
CHECK_EXTENSION_B(EXT_secondary_color, pname);
params[0] = ENUM_TO_BOOLEAN(ctx->Array.SecondaryColor.Type);
break;
case GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT:
CHECK_EXTENSION_B(EXT_secondary_color, pname);
params[0] = INT_TO_BOOLEAN(ctx->Array.SecondaryColor.Stride);
break;
case GL_SECONDARY_COLOR_ARRAY_SIZE_EXT:
CHECK_EXTENSION_B(EXT_secondary_color, pname);
params[0] = INT_TO_BOOLEAN(ctx->Array.SecondaryColor.Size);
break;
case GL_CURRENT_FOG_COORDINATE_EXT:
CHECK_EXTENSION_B(EXT_fog_coord, pname);
{
FLUSH_CURRENT(ctx, 0);
params[0] = FLOAT_TO_BOOLEAN(ctx->Current.Attrib[VERT_ATTRIB_FOG][0]);
}
break;
case GL_FOG_COORDINATE_ARRAY_EXT:
CHECK_EXTENSION_B(EXT_fog_coord, pname);
params[0] = ctx->Array.FogCoord.Enabled;
break;
case GL_FOG_COORDINATE_ARRAY_TYPE_EXT:
CHECK_EXTENSION_B(EXT_fog_coord, pname);
params[0] = ENUM_TO_BOOLEAN(ctx->Array.FogCoord.Type);
break;
case GL_FOG_COORDINATE_ARRAY_STRIDE_EXT:
CHECK_EXTENSION_B(EXT_fog_coord, pname);
params[0] = INT_TO_BOOLEAN(ctx->Array.FogCoord.Stride);
break;
case GL_FOG_COORDINATE_SOURCE_EXT:
CHECK_EXTENSION_B(EXT_fog_coord, pname);
params[0] = ENUM_TO_BOOLEAN(ctx->Fog.FogCoordinateSource);
break;
case GL_MAX_TEXTURE_LOD_BIAS_EXT:
CHECK_EXTENSION_B(EXT_texture_lod_bias, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Const.MaxTextureLodBias);
break;
case GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT:
CHECK_EXTENSION_B(EXT_texture_filter_anisotropic, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Const.MaxTextureMaxAnisotropy);
break;
case GL_MULTISAMPLE_ARB:
CHECK_EXTENSION_B(ARB_multisample, pname);
params[0] = ctx->Multisample.Enabled;
break;
case GL_SAMPLE_ALPHA_TO_COVERAGE_ARB:
CHECK_EXTENSION_B(ARB_multisample, pname);
params[0] = ctx->Multisample.SampleAlphaToCoverage;
break;
case GL_SAMPLE_ALPHA_TO_ONE_ARB:
CHECK_EXTENSION_B(ARB_multisample, pname);
params[0] = ctx->Multisample.SampleAlphaToOne;
break;
case GL_SAMPLE_COVERAGE_ARB:
CHECK_EXTENSION_B(ARB_multisample, pname);
params[0] = ctx->Multisample.SampleCoverage;
break;
case GL_SAMPLE_COVERAGE_VALUE_ARB:
CHECK_EXTENSION_B(ARB_multisample, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Multisample.SampleCoverageValue);
break;
case GL_SAMPLE_COVERAGE_INVERT_ARB:
CHECK_EXTENSION_B(ARB_multisample, pname);
params[0] = ctx->Multisample.SampleCoverageInvert;
break;
case GL_SAMPLE_BUFFERS_ARB:
CHECK_EXTENSION_B(ARB_multisample, pname);
params[0] = INT_TO_BOOLEAN(ctx->DrawBuffer->Visual.sampleBuffers);
break;
case GL_SAMPLES_ARB:
CHECK_EXTENSION_B(ARB_multisample, pname);
params[0] = INT_TO_BOOLEAN(ctx->DrawBuffer->Visual.samples);
break;
case GL_RASTER_POSITION_UNCLIPPED_IBM:
CHECK_EXTENSION_B(IBM_rasterpos_clip, pname);
params[0] = ctx->Transform.RasterPositionUnclipped;
break;
case GL_POINT_SPRITE_NV:
CHECK_EXTENSION_B(NV_point_sprite, pname);
params[0] = ctx->Point.PointSprite;
break;
case GL_POINT_SPRITE_R_MODE_NV:
CHECK_EXTENSION_B(NV_point_sprite, pname);
params[0] = ENUM_TO_BOOLEAN(ctx->Point.SpriteRMode);
break;
case GL_POINT_SPRITE_COORD_ORIGIN:
CHECK_EXTENSION_B(NV_point_sprite, pname);
params[0] = ENUM_TO_BOOLEAN(ctx->Point.SpriteOrigin);
break;
case GL_GENERATE_MIPMAP_HINT_SGIS:
CHECK_EXTENSION_B(SGIS_generate_mipmap, pname);
params[0] = ENUM_TO_BOOLEAN(ctx->Hint.GenerateMipmap);
break;
case GL_VERTEX_PROGRAM_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->VertexProgram.Enabled;
break;
case GL_VERTEX_PROGRAM_POINT_SIZE_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->VertexProgram.PointSizeEnabled;
break;
case GL_VERTEX_PROGRAM_TWO_SIDE_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->VertexProgram.TwoSideEnabled;
break;
case GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = INT_TO_BOOLEAN(ctx->Const.MaxProgramMatrixStackDepth);
break;
case GL_MAX_TRACK_MATRICES_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = INT_TO_BOOLEAN(ctx->Const.MaxProgramMatrices);
break;
case GL_CURRENT_MATRIX_STACK_DEPTH_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->CurrentStack->Depth + 1;
break;
case GL_CURRENT_MATRIX_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
{
const GLfloat *matrix = ctx->CurrentStack->Top->m;
params[0] = FLOAT_TO_BOOLEAN(matrix[0]);
params[1] = FLOAT_TO_BOOLEAN(matrix[1]);
params[2] = FLOAT_TO_BOOLEAN(matrix[2]);
params[3] = FLOAT_TO_BOOLEAN(matrix[3]);
params[4] = FLOAT_TO_BOOLEAN(matrix[4]);
params[5] = FLOAT_TO_BOOLEAN(matrix[5]);
params[6] = FLOAT_TO_BOOLEAN(matrix[6]);
params[7] = FLOAT_TO_BOOLEAN(matrix[7]);
params[8] = FLOAT_TO_BOOLEAN(matrix[8]);
params[9] = FLOAT_TO_BOOLEAN(matrix[9]);
params[10] = FLOAT_TO_BOOLEAN(matrix[10]);
params[11] = FLOAT_TO_BOOLEAN(matrix[11]);
params[12] = FLOAT_TO_BOOLEAN(matrix[12]);
params[13] = FLOAT_TO_BOOLEAN(matrix[13]);
params[14] = FLOAT_TO_BOOLEAN(matrix[14]);
params[15] = FLOAT_TO_BOOLEAN(matrix[15]);
}
break;
case GL_VERTEX_PROGRAM_BINDING_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = INT_TO_BOOLEAN((ctx->VertexProgram.Current ? ctx->VertexProgram.Current->Base.Id : 0));
break;
case GL_PROGRAM_ERROR_POSITION_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = INT_TO_BOOLEAN(ctx->Program.ErrorPos);
break;
case GL_VERTEX_ATTRIB_ARRAY0_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[0].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY1_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[1].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY2_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[2].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY3_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[3].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[4].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY5_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[5].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY6_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[6].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY7_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[7].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY8_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[8].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY9_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[9].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY10_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[10].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY11_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[11].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY12_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[12].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY13_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[13].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY14_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[14].Enabled;
break;
case GL_VERTEX_ATTRIB_ARRAY15_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Array.VertexAttrib[15].Enabled;
break;
case GL_MAP1_VERTEX_ATTRIB0_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[0];
break;
case GL_MAP1_VERTEX_ATTRIB1_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[1];
break;
case GL_MAP1_VERTEX_ATTRIB2_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[2];
break;
case GL_MAP1_VERTEX_ATTRIB3_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[3];
break;
case GL_MAP1_VERTEX_ATTRIB4_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[4];
break;
case GL_MAP1_VERTEX_ATTRIB5_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[5];
break;
case GL_MAP1_VERTEX_ATTRIB6_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[6];
break;
case GL_MAP1_VERTEX_ATTRIB7_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[7];
break;
case GL_MAP1_VERTEX_ATTRIB8_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[8];
break;
case GL_MAP1_VERTEX_ATTRIB9_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[9];
break;
case GL_MAP1_VERTEX_ATTRIB10_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[10];
break;
case GL_MAP1_VERTEX_ATTRIB11_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[11];
break;
case GL_MAP1_VERTEX_ATTRIB12_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[12];
break;
case GL_MAP1_VERTEX_ATTRIB13_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[13];
break;
case GL_MAP1_VERTEX_ATTRIB14_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[14];
break;
case GL_MAP1_VERTEX_ATTRIB15_4_NV:
CHECK_EXTENSION_B(NV_vertex_program, pname);
params[0] = ctx->Eval.Map1Attrib[15];
break;
case GL_FRAGMENT_PROGRAM_NV:
CHECK_EXTENSION_B(NV_fragment_program, pname);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -