summaryrefslogtreecommitdiff
path: root/src/mesa/tnl
AgeCommit message (Collapse)Author
2010-02-13mesa: Fix compiler warningsKarl Schultz
Add explicit casts, fix constant types, fix variable types. Fixes about 340 warnings in MSFT Visual Studio.
2010-02-04mesa: change ctx->Driver.ProgramStringNotify() to return GLbooleanBrian Paul
GL_TRUE indicates that the driver accepts the program. GL_FALSE indicates the program can't be compiled/translated by the driver for some reason (too many resources used, etc). Propogate this result up to the GL API: set GL_INVALID_OPERATION error if glProgramString() was called. Set shader program link status to GL_FALSE if glLinkProgram() was called. At this point, drivers still don't do any program checking and always return GL_TRUE.
2010-01-29tnl: check that state is validated before drawingBrian Paul
(cherry picked from commit 9fd3c74724e557bc6ecc851d8552615ab3becfe2) Conflicts: src/mesa/tnl/t_draw.c
2010-01-27tnl: fix double->float and int/uint conversion warningsBrian Paul
Reported by Karl Schultz.
2010-01-23mesa: add core support for ARB_half_float_vertex.Dave Airlie
Adds the extension to the list + support to the APIs. also add t_draw.c support to convert for sw rast. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-01-14Merge branch 'mesa_7_7_branch'Jakob Bornecrantz
Conflicts: src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c src/gallium/auxiliary/util/Makefile src/gallium/drivers/r300/r300_state_derived.c
2010-01-12tnl: Remove unnecessary header from t_context.c.Vinson Lee
2010-01-12tnl: Remove unnecessary headers from t_draw.c.Vinson Lee
2010-01-12tnl: Remove unnecessary header from t_pipeline.c.Vinson Lee
2010-01-12tnl: Remove unnecessary header from t_rasterpos.c.Vinson Lee
2010-01-12tnl: Remove unnecessary header from t_vb_program.c.Vinson Lee
2010-01-08Merge branch 'mesa_7_7_branch'Brian Paul
Conflicts: src/mesa/drivers/dri/i965/brw_wm_emit.c
2010-01-06tnl: set FOGC result to (f,0,0,1)Brian Paul
Fixed FDO bug 23397.
2009-12-31tnl: add check for conditional renderingBrian Paul
2009-12-22mesa: Remove _mesa_exit wrapper for exit().Eric Anholt
It does nothing else while being less useful than exit() because it lacks attributes that real exit() has.
2009-11-19tnl: Replace deprecated FogCoordPtr with AttribPtr[_TNL_ATTRIB_FOG]Eric Anholt
2009-11-19tnl: Replace deprecated ColorPtr[] with AttribPtr or new BackfaceColorPtr.Eric Anholt
2009-11-19tnl: Replace deprecated IndexPtr[] with AttribPtr[] or new BackfaceIndexPtrEric Anholt
2009-11-19tnl: Replace deprecated ObjPtr with AttribPtr[_TNL_ATTRIB_POS]Eric Anholt
2009-11-19tnl: Replace deprecated TexCoordPtr with AttribPtr[_TNL_ATTRIB_TEX*]Eric Anholt
2009-11-19tnl: Replace NormalPtr with AttribPtr[_TNL_ATTRIB_NORMAL]Eric Anholt
2009-11-19tnl: Remove unused NotifyInputChanges() tnl dd hook.Eric Anholt
2009-11-17Merge branch 'outputswritten64'Ian Romanick
Add a GLbitfield64 type and several macros to operate on 64-bit fields. The OutputsWritten field of gl_program is changed to use that type. This results in a fair amount of fallout in drivers that use programs. No changes are strictly necessary at this point as all bits used are below the 32-bit boundary. Fairly soon several bits will be added for clip distances written by a vertex shader. This will cause several bits used for varyings to be pushed above the 32-bit boundary. This will affect any drivers that support GLSL. At this point, only the i965 driver has been modified to support this eventuality. I did this as a "squash" merge. There were several places through the outputswritten64 branch where things were broken. I foresee this causing difficulties later for bisecting. The history is still available in the branch. Conflicts: src/mesa/drivers/dri/i965/brw_wm.h
2009-10-22Revert "Store clipping distance for user clip planes as part of vertex ↵Ian Romanick
processing" This reverts commit f058b25881e08c9d89a33345e5c84e1357396932. This change is completely wrong in so many ways. When clip distances are generated as part of vertex processing, they must be interpolated to perform clipping. Geometric clipping goes right out the window.
2009-10-13Store clipping distance for user clip planes as part of vertex processingIan Romanick
Once the clipping distance is calculated and stored per vertex, the distances can be re-used when clipping is actually performed. This doesn't have any immediate benefit, but it paves the way for implementing gl_ClipDistance in vertex shaders and result.clip[] in vertex programs. This has not produces any oglconform regressions on my G31 system which uses software TNL. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Brian Paul <brianp@vmware.com>
2009-09-09mesa: move call to init_c_cliptest() from enable.c to tnl module.Brian Paul
Fixed gallium build breakage.
2009-09-08mesa: Add support for ARB_draw_elements_base_vertex.Eric Anholt
2009-09-08mesa: Add support for ARB_depth_clamp.Eric Anholt
This currently doesn't include fixing up the cliptests in the assembly paths to support ARB_depth_clamp, so enabling depth_clamp forces the C path.
2009-08-13tnl: if NAN_CHECK is enabled, also assert that pos.x != 0Brian Paul
2009-08-12vbo: Avoid extra validation of DrawElements.Eric Anholt
This saves mapping the index buffer to get a bounds on the indices that drivers just drop on the floor in the VBO case (cache win), saves a bonus walk of the indices in the CheckArrayBounds case, and other miscellaneous validation. On intel it's a particularly a large win (50-100% in my app) because even though we let the indices stay in both CPU and GPU caches, we still end up waiting for the GPU to be done with the buffer before reading from it. Drivers that want the min/max_index fields must now check index_bounds_valid and use vbo_get_minmax_index before using them.
2009-06-19Merge branch 'ext-provoking-vertex'Brian Paul
Conflicts: docs/relnotes-7.6.html progs/tests/Makefile src/gallium/drivers/softpipe/sp_prim_vbuf.c src/glx/x11/indirect.c src/mesa/glapi/Makefile src/mesa/glapi/dispatch.h src/mesa/glapi/glapioffsets.h src/mesa/glapi/glapitable.h src/mesa/glapi/glapitemp.h src/mesa/glapi/glprocs.h src/mesa/main/dlist.c src/mesa/main/enums.c src/mesa/sparc/glapi_sparc.S src/mesa/x86-64/glapi_x86-64.S src/mesa/x86/glapi_x86.S
2009-06-18mesa: fix first provoking vertex mode for unfilled tri stripsBrian Paul
2009-06-03mesa: fix parity error for tri strips with 1st provoking vertexBrian Paul
2009-06-03tnl: fix first provoking vertex case for unfilled trianglesBrian Paul
2009-06-03tnl: fix first provoking vertex bug for line loopsBrian Paul
2009-06-03tnl: updated clip debug code (disabled)Brian Paul
2009-06-03tnl: add some floating point sanity checks (disabled)Brian Paul
2009-06-01tnl: implement GL_EXT_provoking_vertexBrian Paul
2009-05-22mesa: remove MAX_VERTEX_PROGRAM_ATTRIBSBrian Paul
Use MAX_VERTEX_GENERIC_ATTRIBS instead. No need for two #defines for the same quantity.
2009-05-07 tnl: added some clip debug/print code (disabled)Brian Paul
2009-05-07tnl: replace 0x3f with CILP_FRUSTUM_BITSBrian Paul
2009-04-03mesa: rename some gl_light fields to be clearerBrian Paul
EyeDirection -> SpotDirection _NormDirection -> _NormSpotDirection
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-03-03mesa: include main/dd.h in t_vb_points.c and t_vp_build.cBrian Paul
For some reason makedepend doesn't seem to find the dependency on this header in these two files. Directly including the header is a work-around.
2009-02-28mesa: use fp pointer in _tnl_InvalidateState()Brian Paul
2009-02-28mesa: move #include "bitset.h" out of mtypes.h - not needed in core MesaBrian Paul
2009-02-21mesa: re-org texgen stateBrian Paul
New gl_texgen struct allows quite a bit of code reduction.
2009-02-13mesa: check if TNL state is null in _tnl_free_vertices() to avoid potential ↵Brian Paul
segfault _tnl_free_vertices() is called from several places during context tear-down. Depending on the order in which the swrast, swrast_setup and tnl context is destroyed we could hit a null pointer here. This doesn't seem to be an actual issue with any Mesa drivers, but let's be safe.
2009-02-11mesa: get rid of _math_init()Brian Paul
Only VBO uses the evaluator code so call _math_init_eval() there. Only TNL uses the transform/translate code so call _math_init_transformation() and _math_init_translate9) there. This is a step toward resolving some symbol collisions between Mesa's and gallium's x86 codegen. Have VBO and TNL modules call _math_init_transformation()
2009-02-09mesa: prefix #includes with main/Brian Paul