Please try to mark derived values with a leading underscore ('_').
#include "glheader.h"
#include <GL/internal/glcore.h>
#include "config.h"
#include "glapi/glapi.h"
#include "math/m_matrix.h"
#include "bitset.h"
#include "dd.h"
Data Structures | |
| struct | gl_color_table |
| Data structure for color tables. More... | |
| struct | gl_shine_tab |
| Material shininess lookup table. More... | |
| struct | gl_light |
| Light source state. More... | |
| struct | gl_lightmodel |
| Light model state. More... | |
| struct | gl_material |
| Material state. More... | |
| struct | gl_accum_attrib |
| Accumulation buffer attribute group (GL_ACCUM_BUFFER_BIT). More... | |
| struct | gl_colorbuffer_attrib |
| Color buffer attribute group (GL_COLOR_BUFFER_BIT). More... | |
| struct | gl_current_attrib |
| Current attribute group (GL_CURRENT_BIT). More... | |
| struct | gl_depthbuffer_attrib |
| Depth buffer attribute group (GL_DEPTH_BUFFER_BIT). More... | |
| struct | gl_enable_attrib |
| glEnable()/glDisable() attribute group (GL_ENABLE_BIT). More... | |
| struct | gl_eval_attrib |
| Evaluator attribute group (GL_EVAL_BIT). More... | |
| struct | gl_fog_attrib |
| Fog attribute group (GL_FOG_BIT). More... | |
| struct | gl_hint_attrib |
| Hint attribute group (GL_HINT_BIT). More... | |
| struct | gl_histogram_attrib |
| Histogram attributes. More... | |
| struct | gl_minmax_attrib |
| Color Min/max state. More... | |
| struct | gl_convolution_attrib |
| Image convolution state. More... | |
| struct | gl_light_attrib |
| Lighting attribute group (GL_LIGHT_BIT). More... | |
| struct | gl_line_attrib |
| Line attribute group (GL_LINE_BIT). More... | |
| struct | gl_list_attrib |
| Display list attribute group (GL_LIST_BIT). More... | |
| struct | gl_list_instruction |
| Used by device drivers to hook new commands into display lists. More... | |
| struct | gl_list_extensions |
| Used by device drivers to hook new commands into display lists. More... | |
| struct | gl_multisample_attrib |
| Multisample attribute group (GL_MULTISAMPLE_BIT). More... | |
| struct | gl_pixelmap |
| A pixelmap (see glPixelMap). More... | |
| struct | gl_pixelmaps |
| Collection of all pixelmaps. More... | |
| struct | gl_pixel_attrib |
| Pixel attribute group (GL_PIXEL_MODE_BIT). More... | |
| struct | gl_point_attrib |
| Point attribute group (GL_POINT_BIT). More... | |
| struct | gl_polygon_attrib |
| Polygon attribute group (GL_POLYGON_BIT). More... | |
| struct | gl_scissor_attrib |
| Scissor attributes (GL_SCISSOR_BIT). More... | |
| struct | gl_stencil_attrib |
| Stencil attribute group (GL_STENCIL_BUFFER_BIT). More... | |
| struct | gl_texture_format |
| Texture format record. More... | |
| struct | gl_texture_image |
| Texture image state. More... | |
| struct | gl_texture_object |
| Texture object state. More... | |
| struct | gl_tex_env_combine_state |
| Texture combine environment state. More... | |
| struct | gl_texture_unit |
| Texture unit state. More... | |
| struct | gl_texture_attrib |
| Texture attribute group (GL_TEXTURE_BIT). More... | |
| struct | gl_transform_attrib |
| Transformation attribute group (GL_TRANSFORM_BIT). More... | |
| struct | gl_viewport_attrib |
| Viewport attribute group (GL_VIEWPORT_BIT). More... | |
| struct | gl_attrib_node |
| Node for the attribute stack. More... | |
| struct | gl_buffer_object |
| GL_ARB_vertex/pixel_buffer_object buffer object. More... | |
| struct | gl_pixelstore_attrib |
| Client pixel packing/unpacking attributes. More... | |
| struct | gl_client_array |
| Client vertex array attributes. More... | |
| struct | gl_array_object |
| Collection of vertex arrays. More... | |
| struct | gl_array_attrib |
| Vertex array state. More... | |
| struct | gl_feedback |
| Feedback buffer state. More... | |
| struct | gl_selection |
| Selection buffer state. More... | |
| struct | gl_1d_map |
| 1-D Evaluator control points More... | |
| struct | gl_2d_map |
| 2-D Evaluator control points More... | |
| struct | gl_evaluators |
| All evaluator control point state. More... | |
| struct | gl_program |
| Base class for any kind of program object. More... | |
| struct | gl_vertex_program |
| Vertex program object. More... | |
| struct | gl_fragment_program |
| Fragment program object. More... | |
| struct | gl_program_state |
| State common to vertex and fragment programs. More... | |
| struct | gl_vertex_program_state |
| Context state for vertex programs. More... | |
| struct | gl_fragment_program_state |
| Context state for fragment programs. More... | |
| struct | ati_fragment_shader |
| ATI fragment shader. More... | |
| struct | gl_ati_fragment_shader_state |
| Context state for GL_ATI_fragment_shader. More... | |
| struct | gl_query_object |
| Occlusion/timer query object. More... | |
| struct | gl_query_state |
| Context state for query objects. More... | |
| struct | gl_shader |
| A GLSL vertex or fragment shader object. More... | |
| struct | gl_shader_program |
| A GLSL program object. More... | |
| struct | gl_shader_state |
| Context state for GLSL vertex/fragment shaders. More... | |
| struct | gl_shared_state |
| State which can be shared by multiple contexts:. More... | |
| struct | gl_renderbuffer |
| A renderbuffer stores colors or depth values or stencil values. More... | |
| struct | gl_renderbuffer_attachment |
| A renderbuffer attachment point points to either a texture object (and specifies a mipmap level, cube face or 3D texture slice) or points to a renderbuffer. More... | |
| struct | gl_framebuffer |
| A framebuffer is a collection of renderbuffers (color, depth, stencil, etc). More... | |
| struct | gl_program_constants |
| Limits for vertex and fragment programs. More... | |
| struct | gl_constants |
| Constants which may be overridden by device driver during context creation but are never changed after that. More... | |
| struct | gl_extensions |
| Enable flag for each OpenGL extension. More... | |
| struct | gl_matrix_stack |
| A stack of matrices (projection, modelview, color, texture, etc). More... | |
| struct | gl_tnl_module |
| Core Mesa's support for tnl modules:. More... | |
| struct | mesa_display_list |
| struct | gl_dlist_state |
| State used during display list compilation and execution. More... | |
| struct | __GLcontextRec |
| Mesa rendering context. More... | |
Defines | |
| #define | GL_SHADER_PROGRAM_MESA 0x9999 |
| Special, internal token. | |
| #define | CHAN_MAX 255 |
| #define | CHAN_MAXF 255.0F |
| #define | CHAN_TYPE GL_UNSIGNED_BYTE |
| #define | FIXED_FRAC_BITS 11 |
| #define | FIXED_SHIFT FIXED_FRAC_BITS |
| #define | FIXED_ONE (1 << FIXED_SHIFT) |
| #define | FIXED_HALF (1 << (FIXED_SHIFT-1)) |
| #define | FIXED_FRAC_MASK (FIXED_ONE - 1) |
| #define | FIXED_INT_MASK (~FIXED_FRAC_MASK) |
| #define | FIXED_EPSILON 1 |
| #define | FIXED_SCALE ((float) FIXED_ONE) |
| #define | FIXED_DBL_SCALE ((double) FIXED_ONE) |
| #define | FloatToFixed(X) (IROUND((X) * FIXED_SCALE)) |
| #define | FixedToDouble(X) ((X) * (1.0 / FIXED_DBL_SCALE)) |
| #define | IntToFixed(I) ((I) << FIXED_SHIFT) |
| #define | FixedToInt(X) ((X) >> FIXED_SHIFT) |
| #define | FixedToUns(X) (((unsigned int)(X)) >> FIXED_SHIFT) |
| #define | FixedCeil(X) (((X) + FIXED_ONE - FIXED_EPSILON) & FIXED_INT_MASK) |
| #define | FixedFloor(X) ((X) & FIXED_INT_MASK) |
| #define | FixedToFloat(X) ((X) * (1.0F / FIXED_SCALE)) |
| #define | PosFloatToFixed(X) FloatToFixed(X) |
| #define | SignedFloatToFixed(X) FloatToFixed(X) |
| #define | BUFFER_BIT_FRONT_LEFT (1 << BUFFER_FRONT_LEFT) |
| Bit flags for all renderbuffers. | |
| #define | BUFFER_BIT_BACK_LEFT (1 << BUFFER_BACK_LEFT) |
| #define | BUFFER_BIT_FRONT_RIGHT (1 << BUFFER_FRONT_RIGHT) |
| #define | BUFFER_BIT_BACK_RIGHT (1 << BUFFER_BACK_RIGHT) |
| #define | BUFFER_BIT_AUX0 (1 << BUFFER_AUX0) |
| #define | BUFFER_BIT_AUX1 (1 << BUFFER_AUX1) |
| #define | BUFFER_BIT_AUX2 (1 << BUFFER_AUX2) |
| #define | BUFFER_BIT_AUX3 (1 << BUFFER_AUX3) |
| #define | BUFFER_BIT_DEPTH (1 << BUFFER_DEPTH) |
| #define | BUFFER_BIT_STENCIL (1 << BUFFER_STENCIL) |
| #define | BUFFER_BIT_ACCUM (1 << BUFFER_ACCUM) |
| #define | BUFFER_BIT_COLOR0 (1 << BUFFER_COLOR0) |
| #define | BUFFER_BIT_COLOR1 (1 << BUFFER_COLOR1) |
| #define | BUFFER_BIT_COLOR2 (1 << BUFFER_COLOR2) |
| #define | BUFFER_BIT_COLOR3 (1 << BUFFER_COLOR3) |
| #define | BUFFER_BIT_COLOR4 (1 << BUFFER_COLOR4) |
| #define | BUFFER_BIT_COLOR5 (1 << BUFFER_COLOR5) |
| #define | BUFFER_BIT_COLOR6 (1 << BUFFER_COLOR6) |
| #define | BUFFER_BIT_COLOR7 (1 << BUFFER_COLOR7) |
| #define | BUFFER_BITS_COLOR |
| Mask of all the color buffer bits (but not accum). | |
| #define | EXP_TABLE_SIZE 512 |
| Specular exponent lookup table sizes. | |
| #define | SHINE_TABLE_SIZE 256 |
| Material shininess lookup table sizes. | |
| #define | MAX_DLIST_EXT_OPCODES 16 |
| #define | NUM_TEXTURE_TARGETS 7 |
| #define | ENABLE_TEXGEN0 0x1 |
| #define | ENABLE_TEXGEN1 0x2 |
| #define | ENABLE_TEXGEN2 0x4 |
| #define | ENABLE_TEXGEN3 0x8 |
| #define | ENABLE_TEXGEN4 0x10 |
| #define | ENABLE_TEXGEN5 0x20 |
| #define | ENABLE_TEXGEN6 0x40 |
| #define | ENABLE_TEXGEN7 0x80 |
| #define | ENABLE_TEXMAT0 0x1 |
| #define | ENABLE_TEXMAT1 0x2 |
| #define | ENABLE_TEXMAT2 0x4 |
| #define | ENABLE_TEXMAT3 0x8 |
| #define | ENABLE_TEXMAT4 0x10 |
| #define | ENABLE_TEXMAT5 0x20 |
| #define | ENABLE_TEXMAT6 0x40 |
| #define | ENABLE_TEXMAT7 0x80 |
| #define | ENABLE_TEXGEN(i) (ENABLE_TEXGEN0 << (i)) |
| #define | ENABLE_TEXMAT(i) (ENABLE_TEXMAT0 << (i)) |
| #define | TEXSTORE_PARAMS |
| This macro defines the (many) parameters to the texstore functions. | |
| #define | ATI_FS_INPUT_PRIMARY 0 |
| ATI_fragment_shader runtime state. | |
| #define | ATI_FS_INPUT_SECONDARY 1 |
| #define | RB_MAGIC 0xaabbccdd |
| #define | _MESA_NEW_NEED_EYE_COORDS |
| #define | _MESA_NEW_NEED_NORMALS |
| #define | _IMAGE_NEW_TRANSFER_STATE (_NEW_PIXEL | _NEW_COLOR_MATRIX) |
| #define | NUM_VERTEX_FORMAT_ENTRIES (sizeof(GLvertexformat) / sizeof(void *)) |
| #define | MESA_DLIST_DANGLING_REFS 0x1 |
| #define | MESA_VERBOSE 0 |
| #define | MESA_DEBUG_FLAGS 0 |
| #define | MESA_FUNCTION "a function" |
| #define | Elements(x) sizeof(x)/sizeof(*(x)) |
| #define | VERT_BIT_POS (1 << VERT_ATTRIB_POS) |
| Bitflags for vertex attributes. | |
| #define | VERT_BIT_WEIGHT (1 << VERT_ATTRIB_WEIGHT) |
| #define | VERT_BIT_NORMAL (1 << VERT_ATTRIB_NORMAL) |
| #define | VERT_BIT_COLOR0 (1 << VERT_ATTRIB_COLOR0) |
| #define | VERT_BIT_COLOR1 (1 << VERT_ATTRIB_COLOR1) |
| #define | VERT_BIT_FOG (1 << VERT_ATTRIB_FOG) |
| #define | VERT_BIT_COLOR_INDEX (1 << VERT_ATTRIB_COLOR_INDEX) |
| #define | VERT_BIT_EDGEFLAG (1 << VERT_ATTRIB_EDGEFLAG) |
| #define | VERT_BIT_TEX0 (1 << VERT_ATTRIB_TEX0) |
| #define | VERT_BIT_TEX1 (1 << VERT_ATTRIB_TEX1) |
| #define | VERT_BIT_TEX2 (1 << VERT_ATTRIB_TEX2) |
| #define | VERT_BIT_TEX3 (1 << VERT_ATTRIB_TEX3) |
| #define | VERT_BIT_TEX4 (1 << VERT_ATTRIB_TEX4) |
| #define | VERT_BIT_TEX5 (1 << VERT_ATTRIB_TEX5) |
| #define | VERT_BIT_TEX6 (1 << VERT_ATTRIB_TEX6) |
| #define | VERT_BIT_TEX7 (1 << VERT_ATTRIB_TEX7) |
| #define | VERT_BIT_GENERIC0 (1 << VERT_ATTRIB_GENERIC0) |
| #define | VERT_BIT_GENERIC1 (1 << VERT_ATTRIB_GENERIC1) |
| #define | VERT_BIT_GENERIC2 (1 << VERT_ATTRIB_GENERIC2) |
| #define | VERT_BIT_GENERIC3 (1 << VERT_ATTRIB_GENERIC3) |
| #define | VERT_BIT_GENERIC4 (1 << VERT_ATTRIB_GENERIC4) |
| #define | VERT_BIT_GENERIC5 (1 << VERT_ATTRIB_GENERIC5) |
| #define | VERT_BIT_GENERIC6 (1 << VERT_ATTRIB_GENERIC6) |
| #define | VERT_BIT_GENERIC7 (1 << VERT_ATTRIB_GENERIC7) |
| #define | VERT_BIT_GENERIC8 (1 << VERT_ATTRIB_GENERIC8) |
| #define | VERT_BIT_GENERIC9 (1 << VERT_ATTRIB_GENERIC9) |
| #define | VERT_BIT_GENERIC10 (1 << VERT_ATTRIB_GENERIC10) |
| #define | VERT_BIT_GENERIC11 (1 << VERT_ATTRIB_GENERIC11) |
| #define | VERT_BIT_GENERIC12 (1 << VERT_ATTRIB_GENERIC12) |
| #define | VERT_BIT_GENERIC13 (1 << VERT_ATTRIB_GENERIC13) |
| #define | VERT_BIT_GENERIC14 (1 << VERT_ATTRIB_GENERIC14) |
| #define | VERT_BIT_GENERIC15 (1 << VERT_ATTRIB_GENERIC15) |
| #define | VERT_BIT_TEX(u) (1 << (VERT_ATTRIB_TEX0 + (u))) |
| #define | VERT_BIT_GENERIC(g) (1 << (VERT_ATTRIB_GENERIC0 + (g))) |
| #define | VERT_RESULT_HPOS 0 |
| Indexes for vertex program result attributes. | |
| #define | VERT_RESULT_COL0 1 |
| #define | VERT_RESULT_COL1 2 |
| #define | VERT_RESULT_FOGC 3 |
| #define | VERT_RESULT_TEX0 4 |
| #define | VERT_RESULT_TEX1 5 |
| #define | VERT_RESULT_TEX2 6 |
| #define | VERT_RESULT_TEX3 7 |
| #define | VERT_RESULT_TEX4 8 |
| #define | VERT_RESULT_TEX5 9 |
| #define | VERT_RESULT_TEX6 10 |
| #define | VERT_RESULT_TEX7 11 |
| #define | VERT_RESULT_PSIZ 12 |
| #define | VERT_RESULT_BFC0 13 |
| #define | VERT_RESULT_BFC1 14 |
| #define | VERT_RESULT_EDGE 15 |
| #define | VERT_RESULT_VAR0 16 |
| shader varying | |
| #define | VERT_RESULT_MAX (VERT_RESULT_VAR0 + MAX_VARYING) |
| #define | FRAG_BIT_WPOS (1 << FRAG_ATTRIB_WPOS) |
| Bitflags for fragment program input attributes. | |
| #define | FRAG_BIT_COL0 (1 << FRAG_ATTRIB_COL0) |
| #define | FRAG_BIT_COL1 (1 << FRAG_ATTRIB_COL1) |
| #define | FRAG_BIT_FOGC (1 << FRAG_ATTRIB_FOGC) |
| #define | FRAG_BIT_TEX0 (1 << FRAG_ATTRIB_TEX0) |
| #define | FRAG_BIT_TEX1 (1 << FRAG_ATTRIB_TEX1) |
| #define | FRAG_BIT_TEX2 (1 << FRAG_ATTRIB_TEX2) |
| #define | FRAG_BIT_TEX3 (1 << FRAG_ATTRIB_TEX3) |
| #define | FRAG_BIT_TEX4 (1 << FRAG_ATTRIB_TEX4) |
| #define | FRAG_BIT_TEX5 (1 << FRAG_ATTRIB_TEX5) |
| #define | FRAG_BIT_TEX6 (1 << FRAG_ATTRIB_TEX6) |
| #define | FRAG_BIT_TEX7 (1 << FRAG_ATTRIB_TEX7) |
| #define | FRAG_BIT_VAR0 (1 << FRAG_ATTRIB_VAR0) |
| #define | FRAG_BIT_TEX(U) (FRAG_BIT_TEX0 << (U)) |
| #define | FRAG_BIT_VAR(V) (FRAG_BIT_VAR0 << (V)) |
| #define | FRAG_BITS_TEX_ANY |
| #define | COLORTABLE_PRECONVOLUTION 0 |
| The pixel transfer path has three color tables:. | |
| #define | COLORTABLE_POSTCONVOLUTION 1 |
| #define | COLORTABLE_POSTCOLORMATRIX 2 |
| #define | COLORTABLE_MAX 3 |
Bit flags used for updating material values. | |
| #define | MAT_ATTRIB_FRONT_AMBIENT 0 |
| #define | MAT_ATTRIB_BACK_AMBIENT 1 |
| #define | MAT_ATTRIB_FRONT_DIFFUSE 2 |
| #define | MAT_ATTRIB_BACK_DIFFUSE 3 |
| #define | MAT_ATTRIB_FRONT_SPECULAR 4 |
| #define | MAT_ATTRIB_BACK_SPECULAR 5 |
| #define | MAT_ATTRIB_FRONT_EMISSION 6 |
| #define | MAT_ATTRIB_BACK_EMISSION 7 |
| #define | MAT_ATTRIB_FRONT_SHININESS 8 |
| #define | MAT_ATTRIB_BACK_SHININESS 9 |
| #define | MAT_ATTRIB_FRONT_INDEXES 10 |
| #define | MAT_ATTRIB_BACK_INDEXES 11 |
| #define | MAT_ATTRIB_MAX 12 |
| #define | MAT_ATTRIB_AMBIENT(f) (MAT_ATTRIB_FRONT_AMBIENT+(f)) |
| #define | MAT_ATTRIB_DIFFUSE(f) (MAT_ATTRIB_FRONT_DIFFUSE+(f)) |
| #define | MAT_ATTRIB_SPECULAR(f) (MAT_ATTRIB_FRONT_SPECULAR+(f)) |
| #define | MAT_ATTRIB_EMISSION(f) (MAT_ATTRIB_FRONT_EMISSION+(f)) |
| #define | MAT_ATTRIB_SHININESS(f) (MAT_ATTRIB_FRONT_SHININESS+(f)) |
| #define | MAT_ATTRIB_INDEXES(f) (MAT_ATTRIB_FRONT_INDEXES+(f)) |
| #define | MAT_INDEX_AMBIENT 0 |
| #define | MAT_INDEX_DIFFUSE 1 |
| #define | MAT_INDEX_SPECULAR 2 |
| #define | MAT_BIT_FRONT_AMBIENT (1<<MAT_ATTRIB_FRONT_AMBIENT) |
| #define | MAT_BIT_BACK_AMBIENT (1<<MAT_ATTRIB_BACK_AMBIENT) |
| #define | MAT_BIT_FRONT_DIFFUSE (1<<MAT_ATTRIB_FRONT_DIFFUSE) |
| #define | MAT_BIT_BACK_DIFFUSE (1<<MAT_ATTRIB_BACK_DIFFUSE) |
| #define | MAT_BIT_FRONT_SPECULAR (1<<MAT_ATTRIB_FRONT_SPECULAR) |
| #define | MAT_BIT_BACK_SPECULAR (1<<MAT_ATTRIB_BACK_SPECULAR) |
| #define | MAT_BIT_FRONT_EMISSION (1<<MAT_ATTRIB_FRONT_EMISSION) |
| #define | MAT_BIT_BACK_EMISSION (1<<MAT_ATTRIB_BACK_EMISSION) |
| #define | MAT_BIT_FRONT_SHININESS (1<<MAT_ATTRIB_FRONT_SHININESS) |
| #define | MAT_BIT_BACK_SHININESS (1<<MAT_ATTRIB_BACK_SHININESS) |
| #define | MAT_BIT_FRONT_INDEXES (1<<MAT_ATTRIB_FRONT_INDEXES) |
| #define | MAT_BIT_BACK_INDEXES (1<<MAT_ATTRIB_BACK_INDEXES) |
| #define | FRONT_MATERIAL_BITS |
| #define | BACK_MATERIAL_BITS |
| #define | ALL_MATERIAL_BITS (FRONT_MATERIAL_BITS | BACK_MATERIAL_BITS) |
| #define | LIGHT_SPOT 0x1 |
| Light state flags. | |
| #define | LIGHT_LOCAL_VIEWER 0x2 |
| #define | LIGHT_POSITIONAL 0x4 |
| #define | LIGHT_NEED_VERTICES (LIGHT_POSITIONAL|LIGHT_LOCAL_VIEWER) |
| #define | TEXTURE_1D_INDEX 0 |
| An index for each type of texture object. | |
| #define | TEXTURE_2D_INDEX 1 |
| #define | TEXTURE_3D_INDEX 2 |
| #define | TEXTURE_CUBE_INDEX 3 |
| #define | TEXTURE_RECT_INDEX 4 |
| #define | TEXTURE_1D_ARRAY_INDEX 5 |
| #define | TEXTURE_2D_ARRAY_INDEX 6 |
| #define | TEXTURE_1D_BIT (1 << TEXTURE_1D_INDEX) |
| Bit flags for each type of texture object Used for Texture.Unit[]._ReallyEnabled flags. | |
| #define | TEXTURE_2D_BIT (1 << TEXTURE_2D_INDEX) |
| #define | TEXTURE_3D_BIT (1 << TEXTURE_3D_INDEX) |
| #define | TEXTURE_CUBE_BIT (1 << TEXTURE_CUBE_INDEX) |
| #define | TEXTURE_RECT_BIT (1 << TEXTURE_RECT_INDEX) |
| #define | TEXTURE_1D_ARRAY_BIT (1 << TEXTURE_1D_ARRAY_INDEX) |
| #define | TEXTURE_2D_ARRAY_BIT (1 << TEXTURE_2D_ARRAY_INDEX) |
| #define | S_BIT 1 |
| TexGenEnabled flags. | |
| #define | T_BIT 2 |
| #define | R_BIT 4 |
| #define | Q_BIT 8 |
| #define | TEXGEN_SPHERE_MAP 0x1 |
| Bit flag versions of the corresponding GL_ constants. | |
| #define | TEXGEN_OBJ_LINEAR 0x2 |
| #define | TEXGEN_EYE_LINEAR 0x4 |
| #define | TEXGEN_REFLECTION_MAP_NV 0x8 |
| #define | TEXGEN_NORMAL_MAP_NV 0x10 |
| #define | TEXGEN_NEED_NORMALS |
| #define | TEXGEN_NEED_EYE_COORD |
| #define | FACE_POS_X 0 |
| Indexes for cube map faces. | |
| #define | FACE_NEG_X 1 |
| #define | FACE_POS_Y 2 |
| #define | FACE_NEG_Y 3 |
| #define | FACE_POS_Z 4 |
| #define | FACE_NEG_Z 5 |
| #define | MAX_FACES 6 |
Bits for image transfer operations | |
| |
| #define | IMAGE_SCALE_BIAS_BIT 0x1 |
| #define | IMAGE_SHIFT_OFFSET_BIT 0x2 |
| #define | IMAGE_MAP_COLOR_BIT 0x4 |
| #define | IMAGE_COLOR_TABLE_BIT 0x8 |
| #define | IMAGE_CONVOLUTION_BIT 0x10 |
| #define | IMAGE_POST_CONVOLUTION_SCALE_BIAS 0x20 |
| #define | IMAGE_POST_CONVOLUTION_COLOR_TABLE_BIT 0x40 |
| #define | IMAGE_COLOR_MATRIX_BIT 0x80 |
| #define | IMAGE_POST_COLOR_MATRIX_COLOR_TABLE_BIT 0x100 |
| #define | IMAGE_HISTOGRAM_BIT 0x200 |
| #define | IMAGE_MIN_MAX_BIT 0x400 |
| #define | IMAGE_CLAMP_BIT 0x800 |
| #define | IMAGE_PRE_CONVOLUTION_BITS |
| Pixel Transfer ops up to convolution. | |
| #define | IMAGE_POST_CONVOLUTION_BITS |
| Pixel transfer ops after convolution. | |
Bits to indicate what state has changed. | |
4 unused flags. | |
| #define | _NEW_MODELVIEW 0x1 |
| __GLcontextRec::ModelView | |
| #define | _NEW_PROJECTION 0x2 |
| __GLcontextRec::Projection | |
| #define | _NEW_TEXTURE_MATRIX 0x4 |
| __GLcontextRec::TextureMatrix | |
| #define | _NEW_COLOR_MATRIX 0x8 |
| __GLcontextRec::ColorMatrix | |
| #define | _NEW_ACCUM 0x10 |
| __GLcontextRec::Accum | |
| #define | _NEW_COLOR 0x20 |
| __GLcontextRec::Color | |
| #define | _NEW_DEPTH 0x40 |
| __GLcontextRec::Depth | |
| #define | _NEW_EVAL 0x80 |
| __GLcontextRec::Eval, __GLcontextRec::EvalMap | |
| #define | _NEW_FOG 0x100 |
| __GLcontextRec::Fog | |
| #define | _NEW_HINT 0x200 |
| __GLcontextRec::Hint | |
| #define | _NEW_LIGHT 0x400 |
| __GLcontextRec::Light | |
| #define | _NEW_LINE 0x800 |
| __GLcontextRec::Line | |
| #define | _NEW_PIXEL 0x1000 |
| __GLcontextRec::Pixel | |
| #define | _NEW_POINT 0x2000 |
| __GLcontextRec::Point | |
| #define | _NEW_POLYGON 0x4000 |
| __GLcontextRec::Polygon | |
| #define | _NEW_POLYGONSTIPPLE 0x8000 |
| __GLcontextRec::PolygonStipple | |
| #define | _NEW_SCISSOR 0x10000 |
| __GLcontextRec::Scissor | |
| #define | _NEW_STENCIL 0x20000 |
| __GLcontextRec::Stencil | |
| #define | _NEW_TEXTURE 0x40000 |
| __GLcontextRec::Texture | |
| #define | _NEW_TRANSFORM 0x80000 |
| __GLcontextRec::Transform | |
| #define | _NEW_VIEWPORT 0x100000 |
| __GLcontextRec::Viewport | |
| #define | _NEW_PACKUNPACK 0x200000 |
| __GLcontextRec::Pack, __GLcontextRec::Unpack | |
| #define | _NEW_ARRAY 0x400000 |
| __GLcontextRec::Array | |
| #define | _NEW_RENDERMODE 0x800000 |
| __GLcontextRec::RenderMode, __GLcontextRec::Feedback, __GLcontextRec::Select | |
| #define | _NEW_BUFFERS 0x1000000 |
| __GLcontextRec::Visual, __GLcontextRec::DrawBuffer, | |
| #define | _NEW_MULTISAMPLE 0x2000000 |
| __GLcontextRec::Multisample | |
| #define | _NEW_TRACK_MATRIX 0x4000000 |
| __GLcontextRec::VertexProgram | |
| #define | _NEW_PROGRAM 0x8000000 |
| __GLcontextRec::VertexProgram | |
| #define | _NEW_ALL ~0 |
Bits to track array state changes | |
Also used to summarize array enabled. | |
| #define | _NEW_ARRAY_VERTEX VERT_BIT_POS |
| #define | _NEW_ARRAY_WEIGHT VERT_BIT_WEIGHT |
| #define | _NEW_ARRAY_NORMAL VERT_BIT_NORMAL |
| #define | _NEW_ARRAY_COLOR0 VERT_BIT_COLOR0 |
| #define | _NEW_ARRAY_COLOR1 VERT_BIT_COLOR1 |
| #define | _NEW_ARRAY_FOGCOORD VERT_BIT_FOG |
| #define | _NEW_ARRAY_INDEX VERT_BIT_COLOR_INDEX |
| #define | _NEW_ARRAY_EDGEFLAG VERT_BIT_EDGEFLAG |
| #define | _NEW_ARRAY_POINT_SIZE VERT_BIT_COLOR_INDEX |
| #define | _NEW_ARRAY_TEXCOORD_0 VERT_BIT_TEX0 |
| #define | _NEW_ARRAY_TEXCOORD_1 VERT_BIT_TEX1 |
| #define | _NEW_ARRAY_TEXCOORD_2 VERT_BIT_TEX2 |
| #define | _NEW_ARRAY_TEXCOORD_3 VERT_BIT_TEX3 |
| #define | _NEW_ARRAY_TEXCOORD_4 VERT_BIT_TEX4 |
| #define | _NEW_ARRAY_TEXCOORD_5 VERT_BIT_TEX5 |
| #define | _NEW_ARRAY_TEXCOORD_6 VERT_BIT_TEX6 |
| #define | _NEW_ARRAY_TEXCOORD_7 VERT_BIT_TEX7 |
| #define | _NEW_ARRAY_ATTRIB_0 VERT_BIT_GENERIC0 |
| #define | _NEW_ARRAY_ALL 0xffffffff |
| #define | _NEW_ARRAY_TEXCOORD(i) (_NEW_ARRAY_TEXCOORD_0 << (i)) |
| #define | _NEW_ARRAY_ATTRIB(i) (_NEW_ARRAY_ATTRIB_0 << (i)) |
A bunch of flags that we think might be useful to drivers. | |
| #define | DD_FLATSHADE 0x1 |
| #define | DD_SEPARATE_SPECULAR 0x2 |
| #define | DD_TRI_CULL_FRONT_BACK 0x4 |
| #define | DD_TRI_LIGHT_TWOSIDE 0x8 |
| #define | DD_TRI_UNFILLED 0x10 |
| #define | DD_TRI_SMOOTH 0x20 |
| #define | DD_TRI_STIPPLE 0x40 |
| #define | DD_TRI_OFFSET 0x80 |
| #define | DD_LINE_SMOOTH 0x100 |
| #define | DD_LINE_STIPPLE 0x200 |
| #define | DD_LINE_WIDTH 0x400 |
| #define | DD_POINT_SMOOTH 0x800 |
| #define | DD_POINT_SIZE 0x1000 |
| #define | DD_POINT_ATTEN 0x2000 |
| #define | DD_TRI_TWOSTENCIL 0x4000 |
Define the state changes under which each of these bits might change | |
| #define | _DD_NEW_FLATSHADE _NEW_LIGHT |
| #define | _DD_NEW_SEPARATE_SPECULAR (_NEW_LIGHT | _NEW_FOG | _NEW_PROGRAM) |
| #define | _DD_NEW_TRI_CULL_FRONT_BACK _NEW_POLYGON |
| #define | _DD_NEW_TRI_LIGHT_TWOSIDE _NEW_LIGHT |
| #define | _DD_NEW_TRI_UNFILLED _NEW_POLYGON |
| #define | _DD_NEW_TRI_SMOOTH _NEW_POLYGON |
| #define | _DD_NEW_TRI_STIPPLE _NEW_POLYGON |
| #define | _DD_NEW_TRI_OFFSET _NEW_POLYGON |
| #define | _DD_NEW_LINE_SMOOTH _NEW_LINE |
| #define | _DD_NEW_LINE_STIPPLE _NEW_LINE |
| #define | _DD_NEW_LINE_WIDTH _NEW_LINE |
| #define | _DD_NEW_POINT_SMOOTH _NEW_POINT |
| #define | _DD_NEW_POINT_SIZE _NEW_POINT |
| #define | _DD_NEW_POINT_ATTEN _NEW_POINT |
Typedefs | |
| typedef GLubyte | GLchan |
| Color channel data type. | |
| typedef GLubyte | GLstencil |
| Stencil buffer data type. | |
| typedef int | GLfixed |
| Fixed point data type. | |
| typedef void(* | FetchTexelFuncC )(const struct gl_texture_image *texImage, GLint col, GLint row, GLint img, GLchan *texelOut) |
| Texel fetch function prototype. | |
| typedef void(* | FetchTexelFuncF )(const struct gl_texture_image *texImage, GLint col, GLint row, GLint img, GLfloat *texelOut) |
| As above, but returns floats. | |
| typedef void(* | StoreTexelFunc )(struct gl_texture_image *texImage, GLint col, GLint row, GLint img, const void *texel) |
| typedef GLboolean(* | StoreTexImageFunc )(TEXSTORE_PARAMS) |
| Texture image storage function. | |
| typedef union node | Node |
Some forward type declarations | |
| typedef struct __GLcontextRec | GLcontext |
| typedef struct __GLcontextModesRec | GLvisual |
| typedef struct gl_framebuffer | GLframebuffer |
Enumerations | |
| enum | { VERT_ATTRIB_POS = 0, VERT_ATTRIB_WEIGHT = 1, VERT_ATTRIB_NORMAL = 2, VERT_ATTRIB_COLOR0 = 3, VERT_ATTRIB_COLOR1 = 4, VERT_ATTRIB_FOG = 5, VERT_ATTRIB_COLOR_INDEX = 6, VERT_ATTRIB_POINT_SIZE = 6, VERT_ATTRIB_EDGEFLAG = 7, VERT_ATTRIB_TEX0 = 8, VERT_ATTRIB_TEX1 = 9, VERT_ATTRIB_TEX2 = 10, VERT_ATTRIB_TEX3 = 11, VERT_ATTRIB_TEX4 = 12, VERT_ATTRIB_TEX5 = 13, VERT_ATTRIB_TEX6 = 14, VERT_ATTRIB_TEX7 = 15, VERT_ATTRIB_GENERIC0 = 16, VERT_ATTRIB_GENERIC1 = 17, VERT_ATTRIB_GENERIC2 = 18, VERT_ATTRIB_GENERIC3 = 19, VERT_ATTRIB_GENERIC4 = 20, VERT_ATTRIB_GENERIC5 = 21, VERT_ATTRIB_GENERIC6 = 22, VERT_ATTRIB_GENERIC7 = 23, VERT_ATTRIB_GENERIC8 = 24, |