summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
Commit message (Collapse)AuthorAgeFilesLines
* mesa: reference counting for gl_array_objectBrian Paul2009-05-074-14/+83
| | | | | Every kind of object that can be shared by multiple contexts should be refcounted.
* mesa: array object commentsBrian Paul2009-05-071-0/+5
|
* mesa: move the NullBufferObj from GLcontext to gl_shared_stateBrian Paul2009-05-077-27/+33
| | | | | Since shared array objects may point to the null/default buffer object, the null/default buffer object should be part of the shared state.
* mesa: fix comments, s/texture/buffer/Brian Paul2009-05-071-2/+2
|
* mesa: remove unused gl_buffer_object::OnCard fieldBrian Paul2009-05-072-3/+0
|
* mesa: added gl_buffer_object::Written flag (for debug purposes)Brian Paul2009-05-072-0/+7
| | | | The flag is set when we data has been written into the buffer object.
* mesa: Compute gl_client_array->_MaxElement during array validationBrian Paul2009-05-074-40/+64
| | | | | | Used to be done in the glVertex/Normal/Color/etc/Pointer() calls but if the VBO was reallocated the size could change. New _NEW_BUFFER_OBJECT state flag.
* mesa: use array->BufferObj instead of ctx->Array.ArrayBufferObjBrian Paul2009-05-071-2/+2
| | | | No difference, but a little more understandable.
* mesa: added _ElementSize field to gl_client_arrayBrian Paul2009-05-072-0/+3
| | | | Will be handy for bounds checking later...
* mesa: use local var to make code a bit more conciseBrian Paul2009-05-071-36/+37
|
* mesa: fix/add commentsBrian Paul2009-05-071-3/+2
|
* mesa: add GL_DOUBLE case in _mesa_sizeof_type()Brian Paul2009-05-071-0/+2
|
* mesa: limit number of error raised by invalid GL_TEXTURE_MAX_ANISOTROPY_EXTBrian Paul2009-05-071-2/+4
|
* Merge branch 'mesa_7_5_branch'Brian Paul2009-05-071-0/+4
|\
| * mesa: unmap buffer objects during context tear-downBrian Paul2009-05-071-0/+4
| |
* | mesa: remove unnecessary buffer size checkBrian Paul2009-05-061-8/+0
| |
* | mesa: code consolidation in glDraw[Range]Elements() validationBrian Paul2009-05-061-26/+22
| |
* | mesa: new comments, minor reformattingBrian Paul2009-05-061-7/+20
| |
* | mesa: use elementBuf local var instead of ctx->Array.ElementArrayBufferObjBrian Paul2009-05-061-1/+1
| | | | | | | | Makes no real difference, but more consistant.
* | mesa: only use fallback texture when using shaders, not fixed-function (take ↵Brian Paul2009-05-051-8/+14
| | | | | | | | | | | | | | | | | | | | | | two) The semantics are a little different for shaders vs. fixed-function when trying to use an incomplete texture. The fallback texture returning (0,0,0,1) should only be used with shaders. For fixed function, the texture unit is truly disabled/ignored. Fixes glean fbo test regression.
* | Revert "mesa: only use fallback texture when using shaders, not fixed-function"Brian Paul2009-05-051-14/+8
| | | | | | | | | | | | This reverts commit a0edbfb28fb2e670c657d52190a7e8b1ccf4f46e. This patch didn't completely fix the problem. The next patch will.
* | mesa: only use fallback texture when using shaders, not fixed-functionBrian Paul2009-05-051-8/+14
| | | | | | | | | | | | | | | | The semantics are a little different for shaders vs. fixed-function when trying to use an incomplete texture. The fallback texture returning (0,0,0,1) should only be used with shaders. Fixes glean fbo test regression.
* | mesa: only use fallback texture when using shaders, not fixed-functionBrian Paul2009-05-051-4/+4
| | | | | | | | | | | | | | | | The semantics are a little different for shaders vs. fixed-function when trying to use an incomplete texture. The fallback texture returning (0,0,0,1) should only be used with shaders. Fixes glean fbo test regression.
* | mesa: minor simplification in enable_texture(), updated commentsBrian Paul2009-05-051-3/+5
| |
* | mesa: more complete fix for transform_invarient glitchesKeith Whitwell2009-05-054-9/+30
| | | | | | | | | | | | Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations.
* | mesa/main: set PREFER_DP4 to match position_invarient codeKeith Whitwell2009-05-051-1/+1
| | | | | | | | | | | | | | | | This is a quick fix for z fighting in quake4 caused by the mismatch between vertex transformation here and in the position_invarient code. Full fix would be to make this driver-tunable and adjust both position_invarient and ffvertex_prog.c code to respect driver preferences.
* | mesa: in glReadBufer() set _NEW_BUFFERS, not _NEW_PIXELBrian Paul2009-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since GL_READ_BUFFER is historically part of the gl_pixel_attrib group it made sense to signal changes with _NEW_PIXEL. But now with FBOs it's also part of the framebuffer state. Now _NEW_PIXEL strictly indicates pixels transfer state changes. This change avoids framebuffer state validation when any random bit of pixel-transfer state is set. DRI drivers updated too: don't check _NEW_COLOR when updating framebuffer state. I think that was just copied from the Xlib driver because we care about dither enable/disable state there.
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-05-011-5/+16
|\|
| * mesa: fix state validation bug for glCopyTex[Sub]Image()Brian Paul2009-05-011-5/+16
| | | | | | | | | | We need to make sure the framebuffer state is up to date to make sure we read pixels from the right buffer when doing a texture image copy.
| * mesa: remove -devel suffix from versionBrian Paul2009-05-011-1/+1
| |
* | mesa: fix commentBrian Paul2009-05-011-1/+1
| |
* | mesa: create/use a fallback texture when bound texture is incompleteBrian Paul2009-05-014-2/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When a GLSL sampler reads from an incomplete texture it should return (0,0,0,1). Instead of jumping through hoops in all the drivers to make this happen, just create/install a fallback texture with those texel values. Fixes piglit/fp-incomplete-tex on i965 and more importantly, fixes some GPU lockups when trying to sample from missing surfaces. If a binding table entry is NULL, it seems that sampling sometimes works, but not always (lockup). Todo: create a fallback texture for each type of texture target?
* | mesa: bump version to 7.6 (devel)Brian Paul2009-05-011-3/+4
|/
* mesa/main: protect driver.finish with FLUSH_CURRENTKeith Whitwell2009-04-281-0/+1
| | | | Already doing this for driver.flush()
* mesa: Call _mesa_snprintf instead of snprintf.José Fonseca2009-04-271-1/+1
| | | | snprintf not directly available on Windows.
* mesa: fix up error/warning/debug output newlinesBrian Paul2009-04-242-10/+27
| | | | | | | | | | As of commit 23ad86cfb91c294ce85a3116d4b825aaa3988a6e all messages go through output_if_debug(). Add new parameter to output_if_debug() to indicate whether to emit a newline. _mesa_warning() and _mesa_error() calls should not end their strings with \n. _mesa_debug() calls should end their text with \n.
* mesa: more informative error messagesBrian Paul2009-04-231-6/+10
|
* mesa: minor state-update changes in histogram codeBrian Paul2009-04-221-5/+2
| | | | | Call FLUSH_VERTICES() in _mesa_Histogram(). No need to signal _NEW_PIXEL in ResetHistogram(), ResetMinmax().
* mesa: fix comment typoBrian Paul2009-04-221-1/+1
|
* mesa: fix _mesa_dump_textures(), add null ptr checkBrian Paul2009-04-221-2/+3
| | | | Calling _mesa_dump_textures() deleted the textures... oops!!!
* mesa: protect driver.flush() with FLUSH_CURRENTKeith Whitwell2009-04-222-8/+8
| | | | | | Need to do this to ensure vbo code unmaps its buffers before calling the driver, which may be sitting on top of a memory manager which objects to firing commands from a mapped buffer.
* mesa: new _NEW_PROGRAM_CONSTANTS flagBrian Paul2009-04-212-1/+36
| | | | | | | | | | | | | | | This state flag will be used to indicate that vertex/fragment program constants have changed. _NEW_PROGRAM will be used to indicate changes to the vertex/fragment shader itself, or misc related state. _NEW_PROGRAM_CONSTANTS is also set whenever a program parameter that's tracking GL state has changed. For example, if the projection matrix is in the parameter list, calling glFrustum() will cause _NEW_PROGRAM_CONSTANTS to be set. This will let to remove the need for dynamic state atoms in some drivers. For now, we still set _NEW_PROGRAM in all the places we used to. We'll no longer set _NEW_PROGRAM in glUniform() after drivers/etc have been updated.
* mesa: suppress extra newlineBrian Paul2009-04-171-1/+1
|
* mesa: minor tweak to error messageBrian Paul2009-04-171-1/+1
|
* Merge branch 'register-negate'Brian Paul2009-04-162-4/+2
|\
| * mesa: merge the prog_src_register::NegateBase and NegateAbs fieldsBrian Paul2009-04-142-4/+2
| | | | | | | | | | | | There's really no need for two negation fields. This came from the GL_NV_fragment_program extension. The new, unified Negate bitfield applies after the absolute value step.
* | mesa: fix bad mask bit in clip plane restore code for glPopAttrib()Lars Henning Wendt2009-04-161-1/+1
| |
* | Merge branch 'gallium-s3tc'José Fonseca2009-04-161-8/+8
|\ \
| * | mesa: Report name for missing s3tc functionsJakob Bornecrantz2009-04-091-8/+8
| | |
* | | mesa: Update texenv program when _NEW_ARRAYS is updated as well.Eric Anholt2009-04-151-1/+2
| |/ |/| | | | | | | | | | | | | | | | | This fixes a regression in fbotest1 on 915, where a transition from color+vertex array enabled to texcoord0+vertex array enabled wouldn't trigger program update on the second _mesa_update_state of DrawArrays, and we'd sample a constant texcoord of 0,0,0,1 instead of the array. The double state update in DrawArrays from 1680ef869625dc1fe9cf481b180382a34e0738e7 still needs fixing.