summaryrefslogtreecommitdiff
path: root/src/mesa/tnl
AgeCommit message (Collapse)Author
2007-02-21adjustments to STATE_ token layout/format so token[1] is always the array indexBrian
2007-02-17Lots of changes to prog_print.c code.Brian
Mainly, allow printing programs in either ARB, NV or "debug" formats.
2007-02-14fix stupid bug in the optimized per-vertex fog generation codeRoland Scheidegger
2007-02-09optimize generated vertex programs a bitRoland Scheidegger
Use new internal state to avoid per-vertex normalization of static spot direction vector. Use internal state for simpler per-vertex fog computations (MAD instead of SUB/MUL for linear fog, EX2 instead of POW for EXP/EXP2 fog). Simplify point size calc (2 MADs instead of MOV, MUL, MUL, DP3), and while there fix it up (RSQ instead of RCP). All untested...
2007-02-05Initial implementation of high-level flow-control instructions.Brian
IF/ELSE/ENDIF and BEGIN_LOOP/END_LOOP/BREAK instructions seem to work. Disabled by default though until better tested. Implemented IR_NOT, but needs optimization.
2007-02-05fix issues when using mixed-mode pos-invariant vp and ff tnl (bug #9856)Roland Scheidegger
ARB_vp requires vertex transformation to be invariant to fixed function tnl if the position_invariant option is used. So the same function needs to be used, otherwise z-fighting artifacts may happen with applications which rely on the results being really the same due to precision issues when dealing with floating point values (may not be a problem when using a non-optimizing compiler strictly following IEEE rules).
2007-02-05Initial support of loop and subroutine instructions.Brian
New high-level flow-control instructions, both at IR level and GPU instructions for looping and subroutines.
2007-02-02Merge branch 'vbo-0.2'Keith Whitwell
Conflicts: src/mesa/main/texcompress_s3tc.c src/mesa/tnl/t_array_api.c
2007-01-30Use new rebase helper. Remove other rebase code.Keith Whitwell
2007-01-28noise functionsBrian
2007-01-24remove some parenthesisBrian
2007-01-24use FRAG_BIT_TEX()Brian
2007-01-23fixes for C++ warnings/errorsBrian
2007-01-20Initial implementation of OPCODE_IF/ELSE/ENDIF instructions.Brian
2007-01-17Added OPCODE_INT to convert 4 floats to 4 ints.Brian
2007-01-16Merge vbo_0_1_branchKeith Whitwell
Hopefully leaving behind the cruft generated by the CVS import.
2007-01-16Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa ↵Keith Whitwell
into vbo-0.2 Conflicts: src/mesa/array_cache/sources src/mesa/drivers/dri/i965/brw_context.c src/mesa/drivers/dri/i965/brw_draw.c src/mesa/drivers/dri/i965/brw_fallback.c src/mesa/drivers/dri/i965/brw_vs_emit.c src/mesa/drivers/dri/i965/brw_vs_tnl.c src/mesa/drivers/dri/mach64/mach64_context.c src/mesa/main/extensions.c src/mesa/main/getstring.c src/mesa/tnl/sources src/mesa/tnl/t_save_api.c src/mesa/tnl/t_save_playback.c src/mesa/tnl/t_vtx_api.c src/mesa/tnl/t_vtx_exec.c src/mesa/vbo/vbo_attrib.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_save_api.c src/mesa/vbo/vbo_save_draw.c
2007-01-15Remove debug, reenable inplace splitting.keithw
2007-01-15Split too-large draw commands.Keith Whitwell
Use the vbo_split_ functionality to split incoming drawing command to fit within the fixed-size buffers used by software t&l module.
2007-01-10Update _save_VertexAttrib() functions for non-aliasing behaviour.Brian
2007-01-09add code for generic attributes 16..31Brian
2006-12-20handle PROGRAM_UNIFORM, fix a _mesa_problem() callBrian
2006-12-16cases for NOP, BRABrian
2006-12-15added assertion to catch use of too many temporariesBrian
2006-12-15varying changesBrian
2006-12-15updated includesBrian
2006-12-15updated includesBrian
2006-12-13Obsolete.Brian
2006-12-13Checkpoint work for new GLSL compiler back-end.Brian
Among changes: Remove ctx->FragmentProgram._Active Remove _UseTexEnvProgram Move _MaintainTnlProgram, _MaintainTexEnvProgram, _TexEnvProgram and _TnlProgram fields. Remove/disable old GLSL interpreter code.
2006-11-29check for target instead of program->Target in _tnl_program_string, avoids ↵Roland Scheidegger
segfault if program is NULL
2006-11-22decrease the current vertex count by 1 if an uneven number of vertices is ↵Roland Scheidegger
copied by _tnl_copy_vertices. Otherwise, since in this case it will copy an extra vertex to avoid problems with vertex order in the new buffer, one triangle will be drawn twice. This fixes bug #9062.
2006-11-22remove unneded call to _tnl_invalidate_state() in ↵Roland Scheidegger
_tnl_need_projected_coords(). Connected to bug #9103, though that bug got fixed without this change too.
2006-11-22Set _NEW_LIGHT when materials are present in display lists also.Keith Whitwell
2006-11-22Move setting of _NEW_LIGHT to only occur when materials are present.Keith Whitwell
2006-11-21list header files in sources files (Dan Nicholson)Brian Paul
2006-11-16Make sure vbo's are mapped before accessing their contents inKeith Whitwell
api_arrayelt.c. Reported by Haihao Xiang.
2006-11-15Add a size parameter to _mesa_add_unnamed_constant() andBrian Paul
_mesa_add_named_constant() to indicate vector size (1, 2, 3 or 4). Always 4 for now...
2006-11-03Fix compiler warnings.Keith Whitwell
Add missing code for translating non-GLuint elements.
2006-11-02Fix type-conversion of incoming vertices.Keith Whitwell
Fix mis-application of increment to pointer variable.
2006-11-02merge current trunk into vbo branchAlan Hourihane
2006-11-02Respect array->Normalized flag.Keith Whitwell
Import edgeflag attribute to array of GLbooleans as expected by downstream code.
2006-11-02missing fileKeith Whitwell
2006-10-31signal _NEW_LIGHT in _tnl_copy_to_current()Brian Paul
2006-10-31pickup structs from vbo.hKeith Whitwell
2006-10-30better handling of current attributes. Trivial dlist and varray tests workKeith Whitwell
2006-10-30Move gl_vertex_program_machine struct out of mtypes.h and put into nvvertexec.h.Brian Paul
Massage nvvertexec.c code to work more like s_nvfragprog.c - another step toward unifying vertex/fragment program execution.
2006-10-29Changes for new vbo-building module.Keith Whitwell
- Removed all the old immediate, array and display list code. - Remove references to the old array_cache module. - Added a _tnl_draw_prims() entrypoint. - Added a simplified data import facility for converting non-floating point data as required. Checkpoint commit - trivial/tri works.
2006-10-26If DEBUG, check that all array indices really do fall in [start,end] inBrian Paul
the DrawRangeElements() call. Warn the user if that's not true.
2006-10-25Previously, if a fragment program referenced fragment.fogcoord but theBrian Paul
program didn't use the ARB_fog_linear option, the fragment program's fragment.fogcoord register wasn't loaded properly.
2006-10-18Fix broken line clipping.Brian Paul
When both ends of the line were clipped, we were using the new v0 instead of the original v0 when computing the location of the second vertex. Thus, the second vertex's position was incorrect. Thanks to Heath Feather for finding a test case.