summaryrefslogtreecommitdiff
path: root/src/mesa/main/mtypes.h
AgeCommit message (Collapse)Author
2008-04-04mesa: no longer combine vertex/fragment shader parameters/uniformsBrian
GLSL Vertex and fragment shaders now have independent parameter buffers. A new gl_uniform_list is used to keep track of program uniforms and where each uniform is located in each shader's parameter buffer. This makes better use of the space in each buffer and simplifies shader linking.
2008-03-31Revert "mesa: separate shader program object from shader object." (bug#15244)Xiang, Haihao
This reverts commit 3ffd11f71d021f672b9bc15b3c39c155a0e2fecb.
2008-02-28mesa: separate shader program object from shader object.Xiang, Haihao
Currently a callback delete_shader_cb is used for deleting shader and shader program objects. Mesa detaches all attached shaders in _mesa_free_shader_program_data when deleting shader program objects. However it is likely that these shaders have been freed in _mesa_free_shader, which will result in unexpected behaviour. This fix uses a single callback for shader program objects and deletes shader program objects before shader objects.
2008-01-06Replace gl_framebuffer's _ColorDrawBufferMask with _ColorDrawBufferIndexesBrian
Each array element is now a BUFFER_x token rather than a BUFFER_BIT_x bitmask. The number of active color buffers is specified by _NumColorDrawBuffers. This builds on the previous DrawBuffer changes and will help with drivers implementing GL_ARB_draw_buffers.
2008-01-06Simplify ctx->_NumColorDrawBuffers, _ColorDrawBuffers and fix bug 13835.Brian
These fields are no longer indexed by shader output. Now, we just have a simple array of renderbuffer pointers. If the shader writes to gl_FragData[i], send those colors to the N _ColorDrawBuffers. Otherwise, replicate the single gl_FragColor (or the fixed-function color) to the N _ColorDrawBuffers. A few more changes and simplifications can follow from this...
2007-12-20[intel] Fix and reenable (software) SGIS_generate_mipmapEric Anholt
The core problem was that _mesa_generate_mipmap was not respecting RowStride of the source image. Additionally, the intel private data associated with the images (level and face) was not being initialized for the _mesa_generate_mipmap-generated images.
2007-11-30fix broken two-sided stencilBrian
2007-10-31Update texenvprogram.c code to use prog_cache.c routines.Brian
2007-10-31alloc caches for fixed-func vertex/fragment progsBrian
2007-10-29Remove ctx field from texenvprog_cacheBrian
2007-10-26Re-implement GLSL texture sampler variables.Brian
GLSL sampler variables indicate which texture unit to use for TEX instructions. Previously, this was baked into the fragment/vertex program and couldn't be readily changed once set. Now, SamplerUnits[] array indicates which texture unit is to be used for each sampler variable. These values are set with glUniform1i(). This is extra state that must be passed to the fragment/vertex program executor at runtime.
2007-09-27Restore old _TriangleCaps code to fix Blender problem (bug 12164)Brian
2007-09-11Implement query object interface.Brian
This replaces the temporary occlusion counter functions we had before. Added new ctx->Driver.WaitQuery() function which should block until the result is ready. Sketch out some code for vertex transformation feedback counters.
2007-08-23remove unneeded CallStack arrayBrian
2007-08-16replace Proxy1D/2D/etc fields with ProxyTex[] arrayBrian
2007-08-16Replace Proxy1D/2D/etc with ProxyTex[] indexed by TEXTURE_x_INDEX.Brian
Simplification in colortab.c too.
2007-08-16remove old Saved1D/2D/etc fieldsBrian
2007-08-13Implement mutex/locking around texture object reference counting.Brian
Use new _mesa_reference_texobj() function for referencing/unreferencing textures. Add new assertions/tests to try to detect invalid usage of deleted textures.
2007-08-09Checkpoint intel_renderbuffer removal.Brian
Remove surface ptr from gl_renderbuffer. Use st_renderbuffer in most places. More clean-up.
2007-07-30Lots of improvements to the surface-related code.Brian
Z testing now works with i915 driver. Add gl_renderbuffer::surface pointer (and reverse pointer). Remove intel_surface and xmesa_surface types - no longer used.
2007-07-27Merge branch 'master' of git+ssh://michal@git.freedesktop.org/git/mesa/mesa ↵michal
into softpipe_0_1_branch
2007-07-24remove unused MAX_3D_TEXTURE_SIZE, reformatttingBrian
2007-07-21Remove ctx->Point._Size and ctx->Line._Width.Brian
The clamping for these values depends on whether we're drawing AA or non-AA points, lines. Defer clamping until drawing time. Drivers could compute and keep clamped AA and clamped non-AA values if desired.
2007-07-06Merge branch 'master' of git+ssh://michal@git.freedesktop.org/git/mesa/mesa ↵michal
into softpipe_0_1_branch
2007-07-04Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵Brian
of -I flags.
2007-06-11Replace texobj->Complete with texobj->_Complete since it's a derived field.Brian
2007-06-11typo: s/derrived/derived/Brian
2007-06-07Add support for GL_ARB_fragment_program_shadow.Ian Romanick
2007-06-07Fix ARB_fp spec conformance bug WRT shadow sampling.Ian Romanick
The ARB_fp (and other assembly-level fragment program specs) say that the depth comparison function is always GL_NONE in fragment program mode.
2007-05-24Use the x11 driver as a test harness for the softpipe/state_tracker code.Keith Whitwell
This has some limitations as we currently require a mapped framebuffer, so it only really works with double-buffered ximage rgba8888 windows.
2007-05-23doxygen-ize some commentsBrian
2007-05-21remove the unused texobj Mutex fieldBrian
2007-05-16Initial implementation of MESA_texture_arrayIan Romanick
Shadow sampling from texture arrays is still not implemented. Everything else should be there, though.
2007-04-21added MemPool fieldBrian
2007-04-18s/GL_SHADER_PROGRAM/GL_SHADER_PROGRAM_MESA/ (a Mesa-specific token)Brian
2007-04-05Remove SI imports/exports remnants.George Sapountzis
2007-04-05temporary add some extra renderbuffer debug codeBrian
2007-04-04Remove the never-used SI-style imports/exports code.Brian
2007-03-27Restore the UseTexEnvProgram logic.Brian
Was removed during glsl-compiler work. Still need to go back and revisit this because of the interaction with fragment shaders...
2007-03-23Add the ability to generate programs that doesn't use condition codes.Brian
ctx->Shader.EmitCondCodes determines if we use condition codes. If not, IF statement uses first operand's X component as the condition. Added OPCODE_BRK0, OPCODE_BRK1, OPCODE_CONT0, OPCODE_CONT1 to handle the common cases of conditional break/continue.
2007-03-21merge from masterBrian
2007-03-21mesa: revert f9f79c8d770e696249bd98c68b563f887562c974Xiang, Haihao
to fix #10232 Table6.1(in gl2.1) has been applied for glGetTexImage before calling into _mesa_pack_rgba_span_float.
2007-03-16Colortable re-org.Brian
The pixel transfer path has three color table lookups. Use an array [3] to store that info, rather than separate variables.
2007-03-16added a renderbuffer commentBrian
2007-03-14Re-org of gl_pixel_attrib struct.Brian
Reorder fields according to the order in which the pixel transfer operations take place. Improve comments. Move the pixel maps out of gl_pixel_attrib since they're not supposed to be pushed/popped by glPush/PopAttrib. New gl_pixelmap and gl_pixelmaps structs to contain the pixelmaps.
2007-03-11Implement support for GL_ARB_draw_buffers with GL_MAX_DRAW_BUFFERS > 1.Brian
GL_MAX_DRAW_BUFFERS is currently 4. Added gl_FragData[] output for fragment programs. In _swrast_write_rgba_span() loop over the color outputs/renderbuffers.
2007-03-09Merge branch 'origin' into glsl-compiler-1Brian
Conflicts: src/mesa/main/context.c
2007-03-09New IMAGE_RED_TO_LUMINANCE flag passed to _mesa_pack_rgba_span_float() to ↵Brian
fix glGetTexImage(GL_LUMINANCE) bug #10232.
2007-02-27s/matrix_stack/gl_matrix_stack/ and s/mesa_list_state/gl_dlist_state/Brian
2007-02-26remove unused DriverMgrCtxBrian