summaryrefslogtreecommitdiff
path: root/src/mesa/main
AgeCommit message (Collapse)Author
2009-04-24mesa: fix up error/warning/debug output newlinesBrian Paul
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.
2009-04-23mesa: more informative error messagesBrian Paul
2009-04-22mesa: minor state-update changes in histogram codeBrian Paul
Call FLUSH_VERTICES() in _mesa_Histogram(). No need to signal _NEW_PIXEL in ResetHistogram(), ResetMinmax().
2009-04-22mesa: fix comment typoBrian Paul
2009-04-22mesa: fix _mesa_dump_textures(), add null ptr checkBrian Paul
Calling _mesa_dump_textures() deleted the textures... oops!!!
2009-04-22mesa: protect driver.flush() with FLUSH_CURRENTKeith Whitwell
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.
2009-04-21mesa: new _NEW_PROGRAM_CONSTANTS flagBrian Paul
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.
2009-04-17mesa: suppress extra newlineBrian Paul
2009-04-17mesa: minor tweak to error messageBrian Paul
2009-04-16Merge branch 'register-negate'Brian Paul
2009-04-16mesa: fix bad mask bit in clip plane restore code for glPopAttrib()Lars Henning Wendt
2009-04-16Merge branch 'gallium-s3tc'José Fonseca
2009-04-15mesa: Update texenv program when _NEW_ARRAYS is updated as well.Eric Anholt
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.
2009-04-14mesa: merge the prog_src_register::NegateBase and NegateAbs fieldsBrian Paul
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.
2009-04-14mesa: remove unused matrixType param from ctx->Driver.UniformMatrix() functionsBrian Paul
2009-04-14mesa: move #define for GL_PROGRAM_BINARY_LENGTH_OESBrian Paul
2009-04-14mesa: use standard offsetof() macroBrian Paul
2009-04-09mesa: fix potential recursive locking deadlock in _mesa_HashWalk()Brian Paul
If the walk callback called _mesa_HashRemove() we'd deadlock.
2009-04-09mesa: Report name for missing s3tc functionsJakob Bornecrantz
2009-04-08Mesa: allow suppression of debug messages in a debug buildRobert Ellison
For testing, it's very useful to be able to test on a debug build, while suppressing the debug messages (messages that are by default suppressed in a release build), in order to see the same behavior that users of release builds will see. For example, the "piglit" test suite will flag an error on programs that produce unexpected output, which means that a debug build will always fail due to the extra debug messages. This change introduces a new value to the MESA_DEBUG environment variable. In a debug build, explicitly setting MESA_DEBUG to "0" will suppress all debug messages (both from _mesa_debug() and from _mesa_warning()). (The former behavior was that debug messages were never suppressed in debug builds.) Behavior of non-debug builds has not changed. In such a build, _mesa_debug() messages are always suppressed, and _mesa_warning() messages will be suppressed unless MESA_DEBUG is set *to any value*.
2009-04-08mesa: Don't attempt to free the dummy program.José Fonseca
2009-04-07mesa: add another special/optimized case in _mesa_unpack_depth_span()Brian Paul
2009-04-07mesa: fix incorrect component ordering for sRGB8 texture fetch/storeBrian Paul
This format is layered on MESA_FORMAT_RGB888 so the component order is actually BGR. Fixes glean pixelFormat failures.
2009-04-03mesa: move glGetTexImage(), glGetCompresssedTexImage() code into new fileBrian Paul
2009-04-03mesa: remove the noClamp parameter to _mesa_pack_rgba_span_float()Brian Paul
It was only set to GL_TRUE in one place where it isn't really needed (glGetTexImage(sRGB format)).
2009-04-03mesa: clamp colors to [0,1] for glGetTexImage() when format is GL_LUMINANCEBrian Paul
For luminance, we add R+G+B and it seems we should always clamp in case.
2009-04-03mesa: whitespace and comment clean-upBrian Paul
2009-04-03mesa: remove extra semicolonsBrian Paul
2009-04-03mesa: rename some gl_light fields to be clearerBrian Paul
EyeDirection -> SpotDirection _NormDirection -> _NormSpotDirection
2009-04-03mesa: don't normalize spot light direction until validation timeBrian Paul
In glLight() we're only supposed to transform the direction by the modelview matrix, not normalized it too.
2009-04-03mesa: more error message infoBrian Paul
2009-04-02mesa: fix TexParameter functionsRoland Scheidegger
premature return in TexParameterf caused mesa to never call Driver.TexParameter breaking drivers relying on this (fix bug #20966). While here, also fix using ctx->ErrorValue when deciding to call Driver.TexParameter. Errors are sticky and uncleared errors thus would cause this to no longer get called. Since we thus need return value of set_tex_parameter[if] can also optimize this to only call when value changed.
2009-04-02mesa: don't call ctx->Driver.ReadPixels() if width or height is zeroBrian Paul
2009-04-02mesa: don't call ctx->Driver.Draw/CopyPixels() if width or height is zeroBrian Paul
2009-04-01mesa: get rid of gl_texture_object::_BorderChanBrian Paul
2009-04-01mesa: simplify ycbcr->rgb conversion codeBrian Paul
2009-04-01mesa: convert more texture fetch functions to return GLfloatBrian Paul
2009-04-01mesa: switch texel fetch functions from GLchan to GLfloatBrian Paul
2009-04-01mesa: texture combine clean-upsBrian Paul
Use MAX_COMBINER_TERMS instead of 4. Rename some vars. Update comments.
2009-04-01swrast: do texture sampling/combining in floating pointBrian Paul
The code's cleaner and a step toward supporting float-valued texture sampling. Some optimizations for common cases can be added and re-enabled...
2009-04-01glsl: implement compiling/linking of separate compilation unitsBrian Paul
A shader program may consist of multiple shaders (source code units). If we find there are unresolved functions after compiling the unit that defines main(), we'll concatenate all the respective vertex or fragment shaders then recompile. This isn't foolproof but should work in most cases.
2009-04-01mesa: fix a recursive display list problemBrian Paul
This fixes an issue when compiling glCallList() into another display list when the mode is GL_COMPILE_AND_EXECUTE. Before, the call to glCallList() called _mesa_save_CallList() which called neutral_CallList() which then called _mesa_save_CallList() again. In the end, the parent display list contained two calls to the child display list instead of one. Let's be on the lookout for regressions caused by this change for a while before we cherry-pick this elsewhere.
2009-03-31mesa: fix bug in GPU codegen for fixed-function two-sided lightingBrian Paul
The 'dots' register wasn't getting properly un-negated and un-swizzled after emitting the code for back-face lighting. So, if more than one light source was enabled, the specular exponent for the next light source was wrong. During execution we were evaluating pow(x, y) where y was negative instead of positive. This led to the outcome being zero or NaN. This fixes the occasional black triangles seen in isosurf when hacked to enable two-sided lighting.
2009-03-31mesa: minor reformatting, whitespace changesBrian Paul
2009-03-31Updated CPU_TO_LE32 to work on darwinJeremy Huddleston
2009-03-31fix ugly copy/paste error in mipmap generation codeRoland Scheidegger
2009-03-28mesa: fix a glGetTexImage issue with base-converted texture formatsRoland Scheidegger
need to respect the user-supplied base format, not the one derived from the texture format actually used.
2009-03-28mesa: add _rev signed rgba texture formatRoland Scheidegger
2009-03-28glapi regenerateRoland Scheidegger
2009-03-28mesa: add new signed rgba texture formatRoland Scheidegger
This is a (partial) backport of the signed texture format support in OGL 3.1. Since it wasn't promoted from an existing extension roll our own.