📄 get.c
字号:
break;
case GL_VERTEX_ARRAY_STRIDE:
params[0] = INT_TO_BOOLEAN(ctx->Array.Vertex.Stride);
break;
case GL_VERTEX_ARRAY_COUNT_EXT:
params[0] = INT_TO_BOOLEAN(0);
break;
case GL_NORMAL_ARRAY:
params[0] = ENUM_TO_BOOLEAN(ctx->Array.Normal.Enabled);
break;
case GL_NORMAL_ARRAY_TYPE:
params[0] = ENUM_TO_BOOLEAN(ctx->Array.Normal.Type);
break;
case GL_NORMAL_ARRAY_STRIDE:
params[0] = INT_TO_BOOLEAN(ctx->Array.Normal.Stride);
break;
case GL_NORMAL_ARRAY_COUNT_EXT:
params[0] = INT_TO_BOOLEAN(0);
break;
case GL_COLOR_ARRAY:
params[0] = ctx->Array.Color.Enabled;
break;
case GL_COLOR_ARRAY_SIZE:
params[0] = INT_TO_BOOLEAN(ctx->Array.Color.Size);
break;
case GL_COLOR_ARRAY_TYPE:
params[0] = ENUM_TO_BOOLEAN(ctx->Array.Color.Type);
break;
case GL_COLOR_ARRAY_STRIDE:
params[0] = INT_TO_BOOLEAN(ctx->Array.Color.Stride);
break;
case GL_COLOR_ARRAY_COUNT_EXT:
params[0] = INT_TO_BOOLEAN(0);
break;
case GL_INDEX_ARRAY:
params[0] = ctx->Array.Index.Enabled;
break;
case GL_INDEX_ARRAY_TYPE:
params[0] = ENUM_TO_BOOLEAN(ctx->Array.Index.Type);
break;
case GL_INDEX_ARRAY_STRIDE:
params[0] = INT_TO_BOOLEAN(ctx->Array.Index.Stride);
break;
case GL_INDEX_ARRAY_COUNT_EXT:
params[0] = INT_TO_BOOLEAN(0);
break;
case GL_TEXTURE_COORD_ARRAY:
params[0] = ctx->Array.TexCoord[ctx->Array.ActiveTexture].Enabled;
break;
case GL_TEXTURE_COORD_ARRAY_SIZE:
params[0] = INT_TO_BOOLEAN(ctx->Array.TexCoord[ctx->Array.ActiveTexture].Size);
break;
case GL_TEXTURE_COORD_ARRAY_TYPE:
params[0] = ENUM_TO_BOOLEAN(ctx->Array.TexCoord[ctx->Array.ActiveTexture].Type);
break;
case GL_TEXTURE_COORD_ARRAY_STRIDE:
params[0] = INT_TO_BOOLEAN(ctx->Array.TexCoord[ctx->Array.ActiveTexture].Stride);
break;
case GL_TEXTURE_COORD_ARRAY_COUNT_EXT:
params[0] = INT_TO_BOOLEAN(0);
break;
case GL_EDGE_FLAG_ARRAY:
params[0] = ctx->Array.EdgeFlag.Enabled;
break;
case GL_EDGE_FLAG_ARRAY_STRIDE:
params[0] = INT_TO_BOOLEAN(ctx->Array.EdgeFlag.Stride);
break;
case GL_EDGE_FLAG_ARRAY_COUNT_EXT:
params[0] = INT_TO_BOOLEAN(0);
break;
case GL_MAX_TEXTURE_UNITS_ARB:
CHECK_EXTENSION_B(ARB_multitexture, pname);
params[0] = INT_TO_BOOLEAN(MIN2(ctx->Const.MaxTextureImageUnits, ctx->Const.MaxTextureCoordUnits));
break;
case GL_ACTIVE_TEXTURE_ARB:
CHECK_EXTENSION_B(ARB_multitexture, pname);
params[0] = INT_TO_BOOLEAN(GL_TEXTURE0_ARB + ctx->Texture.CurrentUnit);
break;
case GL_CLIENT_ACTIVE_TEXTURE_ARB:
CHECK_EXTENSION_B(ARB_multitexture, pname);
params[0] = INT_TO_BOOLEAN(GL_TEXTURE0_ARB + ctx->Array.ActiveTexture);
break;
case GL_TEXTURE_CUBE_MAP_ARB:
CHECK_EXTENSION_B(ARB_texture_cube_map, pname);
params[0] = _mesa_IsEnabled(GL_TEXTURE_CUBE_MAP_ARB);
break;
case GL_TEXTURE_BINDING_CUBE_MAP_ARB:
CHECK_EXTENSION_B(ARB_texture_cube_map, pname);
params[0] = INT_TO_BOOLEAN(ctx->Texture.Unit[ctx->Texture.CurrentUnit].CurrentCubeMap->Name);
break;
case GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB:
CHECK_EXTENSION_B(ARB_texture_cube_map, pname);
params[0] = INT_TO_BOOLEAN((1 << (ctx->Const.MaxCubeTextureLevels - 1)));
break;
case GL_TEXTURE_COMPRESSION_HINT_ARB:
CHECK_EXTENSION_B(ARB_texture_compression, pname);
params[0] = INT_TO_BOOLEAN(ctx->Hint.TextureCompression);
break;
case GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB:
CHECK_EXTENSION_B(ARB_texture_compression, pname);
params[0] = INT_TO_BOOLEAN(_mesa_get_compressed_formats(ctx, NULL));
break;
case GL_COMPRESSED_TEXTURE_FORMATS_ARB:
CHECK_EXTENSION_B(ARB_texture_compression, pname);
{
GLint formats[100];
GLuint i, n = _mesa_get_compressed_formats(ctx, formats);
ASSERT(n <= 100);
for (i = 0; i < n; i++)
params[i] = ENUM_TO_INT(formats[i]);
}
break;
case GL_ARRAY_ELEMENT_LOCK_FIRST_EXT:
CHECK_EXTENSION_B(EXT_compiled_vertex_array, pname);
params[0] = INT_TO_BOOLEAN(ctx->Array.LockFirst);
break;
case GL_ARRAY_ELEMENT_LOCK_COUNT_EXT:
CHECK_EXTENSION_B(EXT_compiled_vertex_array, pname);
params[0] = INT_TO_BOOLEAN(ctx->Array.LockCount);
break;
case GL_TRANSPOSE_COLOR_MATRIX_ARB:
{
const GLfloat *matrix = ctx->ColorMatrixStack.Top->m;
params[0] = FLOAT_TO_BOOLEAN(matrix[0]);
params[1] = FLOAT_TO_BOOLEAN(matrix[4]);
params[2] = FLOAT_TO_BOOLEAN(matrix[8]);
params[3] = FLOAT_TO_BOOLEAN(matrix[12]);
params[4] = FLOAT_TO_BOOLEAN(matrix[1]);
params[5] = FLOAT_TO_BOOLEAN(matrix[5]);
params[6] = FLOAT_TO_BOOLEAN(matrix[9]);
params[7] = FLOAT_TO_BOOLEAN(matrix[13]);
params[8] = FLOAT_TO_BOOLEAN(matrix[2]);
params[9] = FLOAT_TO_BOOLEAN(matrix[6]);
params[10] = FLOAT_TO_BOOLEAN(matrix[10]);
params[11] = FLOAT_TO_BOOLEAN(matrix[14]);
params[12] = FLOAT_TO_BOOLEAN(matrix[3]);
params[13] = FLOAT_TO_BOOLEAN(matrix[7]);
params[14] = FLOAT_TO_BOOLEAN(matrix[11]);
params[15] = FLOAT_TO_BOOLEAN(matrix[15]);
}
break;
case GL_TRANSPOSE_MODELVIEW_MATRIX_ARB:
{
const GLfloat *matrix = ctx->ModelviewMatrixStack.Top->m;
params[0] = FLOAT_TO_BOOLEAN(matrix[0]);
params[1] = FLOAT_TO_BOOLEAN(matrix[4]);
params[2] = FLOAT_TO_BOOLEAN(matrix[8]);
params[3] = FLOAT_TO_BOOLEAN(matrix[12]);
params[4] = FLOAT_TO_BOOLEAN(matrix[1]);
params[5] = FLOAT_TO_BOOLEAN(matrix[5]);
params[6] = FLOAT_TO_BOOLEAN(matrix[9]);
params[7] = FLOAT_TO_BOOLEAN(matrix[13]);
params[8] = FLOAT_TO_BOOLEAN(matrix[2]);
params[9] = FLOAT_TO_BOOLEAN(matrix[6]);
params[10] = FLOAT_TO_BOOLEAN(matrix[10]);
params[11] = FLOAT_TO_BOOLEAN(matrix[14]);
params[12] = FLOAT_TO_BOOLEAN(matrix[3]);
params[13] = FLOAT_TO_BOOLEAN(matrix[7]);
params[14] = FLOAT_TO_BOOLEAN(matrix[11]);
params[15] = FLOAT_TO_BOOLEAN(matrix[15]);
}
break;
case GL_TRANSPOSE_PROJECTION_MATRIX_ARB:
{
const GLfloat *matrix = ctx->ProjectionMatrixStack.Top->m;
params[0] = FLOAT_TO_BOOLEAN(matrix[0]);
params[1] = FLOAT_TO_BOOLEAN(matrix[4]);
params[2] = FLOAT_TO_BOOLEAN(matrix[8]);
params[3] = FLOAT_TO_BOOLEAN(matrix[12]);
params[4] = FLOAT_TO_BOOLEAN(matrix[1]);
params[5] = FLOAT_TO_BOOLEAN(matrix[5]);
params[6] = FLOAT_TO_BOOLEAN(matrix[9]);
params[7] = FLOAT_TO_BOOLEAN(matrix[13]);
params[8] = FLOAT_TO_BOOLEAN(matrix[2]);
params[9] = FLOAT_TO_BOOLEAN(matrix[6]);
params[10] = FLOAT_TO_BOOLEAN(matrix[10]);
params[11] = FLOAT_TO_BOOLEAN(matrix[14]);
params[12] = FLOAT_TO_BOOLEAN(matrix[3]);
params[13] = FLOAT_TO_BOOLEAN(matrix[7]);
params[14] = FLOAT_TO_BOOLEAN(matrix[11]);
params[15] = FLOAT_TO_BOOLEAN(matrix[15]);
}
break;
case GL_TRANSPOSE_TEXTURE_MATRIX_ARB:
{
const GLfloat *matrix = ctx->TextureMatrixStack[ctx->Texture.CurrentUnit].Top->m;
params[0] = FLOAT_TO_BOOLEAN(matrix[0]);
params[1] = FLOAT_TO_BOOLEAN(matrix[4]);
params[2] = FLOAT_TO_BOOLEAN(matrix[8]);
params[3] = FLOAT_TO_BOOLEAN(matrix[12]);
params[4] = FLOAT_TO_BOOLEAN(matrix[1]);
params[5] = FLOAT_TO_BOOLEAN(matrix[5]);
params[6] = FLOAT_TO_BOOLEAN(matrix[9]);
params[7] = FLOAT_TO_BOOLEAN(matrix[13]);
params[8] = FLOAT_TO_BOOLEAN(matrix[2]);
params[9] = FLOAT_TO_BOOLEAN(matrix[6]);
params[10] = FLOAT_TO_BOOLEAN(matrix[10]);
params[11] = FLOAT_TO_BOOLEAN(matrix[14]);
params[12] = FLOAT_TO_BOOLEAN(matrix[3]);
params[13] = FLOAT_TO_BOOLEAN(matrix[7]);
params[14] = FLOAT_TO_BOOLEAN(matrix[11]);
params[15] = FLOAT_TO_BOOLEAN(matrix[15]);
}
break;
case GL_OCCLUSION_TEST_HP:
CHECK_EXTENSION_B(HP_occlusion_test, pname);
params[0] = ctx->Depth.OcclusionTest;
break;
case GL_OCCLUSION_TEST_RESULT_HP:
CHECK_EXTENSION_B(HP_occlusion_test, pname);
{
FLUSH_VERTICES(ctx, _NEW_DEPTH);
if (ctx->Depth.OcclusionTest)
params[0] = ctx->OcclusionResult;
else
params[0] = ctx->OcclusionResultSaved;
/* reset flag now */
ctx->OcclusionResult = GL_FALSE;
ctx->OcclusionResultSaved = GL_FALSE;
return;
}
break;
case GL_PIXEL_TEXTURE_SGIS:
CHECK_EXTENSION_B(SGIS_pixel_texture, pname);
params[0] = ctx->Pixel.PixelTextureEnabled;
break;
case GL_PIXEL_TEX_GEN_SGIX:
CHECK_EXTENSION_B(SGIX_pixel_texture, pname);
params[0] = ctx->Pixel.PixelTextureEnabled;
break;
case GL_PIXEL_TEX_GEN_MODE_SGIX:
CHECK_EXTENSION_B(SGIX_pixel_texture, pname);
params[0] = ENUM_TO_BOOLEAN(pixel_texgen_mode(ctx));
break;
case GL_COLOR_MATRIX_SGI:
{
const GLfloat *matrix = ctx->ColorMatrixStack.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_COLOR_MATRIX_STACK_DEPTH_SGI:
params[0] = INT_TO_BOOLEAN(ctx->ColorMatrixStack.Depth + 1);
break;
case GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI:
params[0] = INT_TO_BOOLEAN(MAX_COLOR_STACK_DEPTH);
break;
case GL_POST_COLOR_MATRIX_RED_SCALE_SGI:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostColorMatrixScale[0]);
break;
case GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostColorMatrixScale[1]);
break;
case GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostColorMatrixScale[2]);
break;
case GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostColorMatrixScale[3]);
break;
case GL_POST_COLOR_MATRIX_RED_BIAS_SGI:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostColorMatrixBias[0]);
break;
case GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostColorMatrixBias[1]);
break;
case GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostColorMatrixBias[2]);
break;
case GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI:
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostColorMatrixBias[3]);
break;
case GL_CONVOLUTION_1D_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = ctx->Pixel.Convolution1DEnabled;
break;
case GL_CONVOLUTION_2D_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = ctx->Pixel.Convolution2DEnabled;
break;
case GL_SEPARABLE_2D_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = ctx->Pixel.Separable2DEnabled;
break;
case GL_POST_CONVOLUTION_RED_SCALE_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostConvolutionScale[0]);
break;
case GL_POST_CONVOLUTION_GREEN_SCALE_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostConvolutionScale[1]);
break;
case GL_POST_CONVOLUTION_BLUE_SCALE_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostConvolutionScale[2]);
break;
case GL_POST_CONVOLUTION_ALPHA_SCALE_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostConvolutionScale[3]);
break;
case GL_POST_CONVOLUTION_RED_BIAS_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostConvolutionBias[0]);
break;
case GL_POST_CONVOLUTION_GREEN_BIAS_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostConvolutionBias[1]);
break;
case GL_POST_CONVOLUTION_BLUE_BIAS_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
params[0] = FLOAT_TO_BOOLEAN(ctx->Pixel.PostConvolutionBias[2]);
break;
case GL_POST_CONVOLUTION_ALPHA_BIAS_EXT:
CHECK_EXTENSION_B(EXT_convolution, pname);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -