summaryrefslogtreecommitdiff
path: root/src/mesa/main/mtypes.h
AgeCommit message (Collapse)Author
2005-11-10Move code to enable FP exceptions into debug.c (set MESA_DEBUG=fpexceptions).Brian Paul
Get rid of MESA_DEBUG preprocessor symbol, just use DEBUG instead.
2005-11-08At keithw's request, remove all traces of the "fragment program to C" andIan Romanick
TCC experiment.
2005-11-08some initial work on upcoming GL_EXT_framebuffer_blit extensionBrian Paul
2005-11-05Unify vertex/fragment program instuctions.Brian Paul
Based on patch by Ian (#4967) but also unify instruction opcodes.
2005-11-05Replace parameter_type enum in program.[ch], use register_file enums instead.Brian Paul
2005-11-02Rename FRAG_OUTPUT_* tokens to FRAG_RESULT_* to match vertex program conventionBrian Paul
2005-11-01Several fp and vp tweaks:Keith Whitwell
- Renumber VERT_RESULT_* values so that they match the numbers of the corresponding FRAG_ATTRIB_ values. - Add ctx->VertexProgram._Current and FragmentProgram._Current values which point to either the current client-supplied program if enabled, or otherwise to the current mesa-internal program. Thus this program is always the correct one for the current state, providing that the mesa flags to turn on automatic generation are enabled. - Add callbacks to ctx->Driver.BindProgram() in texenvprogram.c and t_vp_build.c so that the driver knows when the generated program changes. This is cleaner than trying to code all the possible _NEW_* flags into the driver, and more precise as well. - Add a UsesKill flag to identify fragment programs with that instruction, as these can require special treatment. - Move the FRAG_OUTPUT values to mtypes.h, near to similar defn's.
2005-11-01Re-org and clean-up of vertx/fragment program limits (instructions,Brian Paul
temporaries, parameters, etc). glGetProgramivARB() now returns all the right things. Updated i915 and r300 code to initialize program native limits and current program's native instruction/temporary/etc counts.
2005-10-29clean-up commentsBrian Paul
2005-10-05Remove _IsPowerOfTwo from gl_texture_object, not really needed.Brian Paul
2005-10-05s/IntFormat/InternalFormat/ and s/Format/_BaseFormat/ for gl_color_table.Brian Paul
2005-10-05In gl_texture_image replace IntFormat with InternalFormat and Format withBrian Paul
_BaseFormat to be consistant with gl_renderbuffer.
2005-10-01updated commentBrian Paul
2005-09-28Initial work for GL_EXT_packed_depth_stencil extension.Brian Paul
glReadPixels done, glDrawPixels mostly done.
2005-09-23Replace gl_framebuffer's _ColorReadBufferMask with _ColorReadBufferIndex,Brian Paul
Streamline the _mesa_update_framebuffer() function a bit.
2005-09-23Add Wrapper field to gl_renderbuffer. Used for wrapping one renderbufferBrian Paul
with another, such as wrapping a hardware/win-sys RGB renderbuffer with a software-based alpha buffer. Previous alpha buffer wrapping was conflicting with the X driver's xmesa_renderbuffer structure containment/inheritance. That lead to memory corruption.
2005-09-22Replace gl_renderbuffer.ComponentSizes[] with separate RedBits, GreenBits,Brian Paul
BlueBits, etc fields.
2005-09-21Remove ACCUM_BITS.Brian Paul
2005-09-21replace GLdepth with GLuint and remove GLdepthBrian Paul
2005-09-20remove STENCIL_MAXBrian Paul
2005-09-19additional wrapper updates, bug 4468Brian Paul
2005-09-15Replace GLuint with GLbitfield where appropriate. Also replace GLuintBrian Paul
with GLboolean in a few places.
2005-09-13OpenGL 2.0's two-sided stencil feature wasn't implemented correctly.Brian Paul
See comment near top of stencil.c for info about OpenGL 2.0 vs. GL_EXT_stencil_two_side.
2005-09-13Use GLuint/GLint intead of GLstencil for stencil state.Brian Paul
2005-09-03Remove last remnants of pre-renderbuffer code.Brian Paul
2005-09-02Prototype implementation of new GL_EXT_timer_query extension (not finalized ↵Brian Paul
yet). Extends the query mechanism to query elapsed time while rendering.
2005-09-02add error checking to the GL_ATI_FRAGMENT_SHADER entrypoints. Fix bug with ↵Roland Scheidegger
scope of ati fragment shader constants. Fix issues with specifying color/alpha instructions not pair-wise. Change internal representation of the shader (to better fit how the extension works, should make driver implementations simpler, and saves some memory). (still doesn't work correctly with doom3 and swrast, but not worse than before)
2005-08-27Rearrange the code related to GL_ARB_occlusion_object to generalize queryBrian Paul
objects for future types of queries.
2005-08-25removed GL_HP_occlusion_test extensionBrian Paul
2005-08-10the PIXEL_MAP_I_TO_I table should be GLfloat, not GLintBrian Paul
2005-07-28Major rip-up of internal function insertion interface. The oldIan Romanick
_glapi_add_entrypoint has been replaced by a new routine called _glapi_add_dispatch. This new routine dynamically assignes dispatch offsets to functions added. This allows IHVs to add support for extension functions that do not have assigned dispatch offsets. It also means that a driver has no idea what offset will be assigned to a function. The vast majority of the changes in this commit account for that. An additional table, driDispatchRemapTable, is added. Functions not in the Linux OpenGL ABI (i.e., anything not in GL 1.2 + ARB_multitexture) has a fixed offset in this new table. The entry in this table specifies the offset in of the function in the real dispatch table. The internal interface was also bumped from version 20050725 to 20050727. This has been tested with various programs in progs/demos on: radeon (Radeon Mobility M6) r128 (Rage 128 Pro) mga (G400)
2005-07-22Make the vertex program source register Index field a signed int sinceBrian Paul
relative addressing can be negative. Change some GLuint indexes to GLint in the t_vp_build.c file. Added PROGRAM_UNDEFINED token for initializing the register File field to avoid a gcc 4.0 warning.
2005-07-11Cache texenv programs to avoid repeated compilation (Ben Skeggs)Keith Whitwell
2005-07-01Remove NEW_RENDERBUFFER stuff.Brian Paul
Now, OLD_RENDERBUFFER marks code that needs to eventually be removed when all the drivers are updated to no longer need the SetBuffer() function.
2005-06-09Store compiled vertex program representations in a pointer in theKeith Whitwell
vertex_program struct. Allow switching between regular and vertex_program implementations of fixed function TNL with the MESA_TNL_PROG environment var (previously this required recompilation). Ensure program compilation only references program data, not the wider context. This means that compiled programs only need to be invalidated when the program string changes, not on other state changes.
2005-06-04set OLD_RENDERBUFFER=0, need to clean up a few more things before totally ↵Brian Paul
removing that
2005-05-12new MESA_DEBUG option: disassemKeith Whitwell
2005-05-09Use driver functions to create TexEnvProgram, TnlProgramKeith Whitwell
2005-05-04Major check-in of changes for GL_EXT_framebuffer_object extension.Brian Paul
Main driver impacts: - new code for creating the Mesa GLframebuffer - new span/pixel read/write code Some drivers not yet updated/tested.
2005-05-04Add a facility to route all rasterization through a fragment programKeith Whitwell
which is automatically generated to match the current texture environment state. Introduces a new value ctx->FragmentProgram._Active which is true when either _Enabled is true or there is such a fragment program ready to run. To test out on a driver running the software rasterizer, set MESA_TEX_PROG=t in the environment. It goes without saying that performance is lower for the software rasterizer in this mode.
2005-04-22Simplify the pipeline_stage structureKeith Whitwell
- remove input/output fields, input tracking removed. - remove state fields, the validate function now called on every statechange. - add an explicit 'create' function. Add in code to build vertex program to implement current t&l state. Still disabled, but turn on with a #define in t_vp_build.h.
2005-04-21Reduce the size of mesa's internal fragment and vertex programKeith Whitwell
representations by switching to packed structures for registers and instructions.
2005-04-15remove carriage returnsBrian Paul
2005-04-14ARB_shading_language_100 bit;Michal Krol
Fragment shader derivative hint
2005-03-03change gl_buffer_object's Size field to GLsizeiptrARB typeBrian Paul
2005-02-24More GL_EXT_framebuffer_object: rename some things, added device driver hooks.Brian Paul
2005-02-07additional work on GL_EXT_framebuffer_objectBrian Paul
2005-02-05Some initial work on GL_EXT_framebuffer_object.Brian Paul
2005-02-05Remove the Shared->TexObjectList pointer and Next field from gl_texture_object.Brian Paul
Was only used by two drivers to walk over all texture objects. Can do that via the hash table instead. Cleaned up some comments for struct gl_texture_object.
2005-01-30add number of passes count to ati_fragment_shaderDave Airlie