summaryrefslogtreecommitdiff
path: root/src/mesa/tnl/t_vb_vertex.c
AgeCommit message (Collapse)Author
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_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.
2008-09-18mesa: prefix a bunch of #include lines with "main/".Brian Paul
This is another step toward removing a whole bunch of -I flags from the cc commands. Still need to address driver code...
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-04-06Rename CLIP_ALL_BITS to CLIP_FRUSTUM_BITS to reflect the fact that the valueBrian Paul
only includes the 6 frustum bits, not the user-clip plane bit, nor the vertex cull bit.
2006-03-21GLSL fixes:Michal Krol
- generate error on NULL pointers in glShaderSourceARB; - reinstall program object, if current, in glLinkProgramARB; - vertex and fragment shaders are optional in program object; - floor asm was wrongly computed for x86 back-end; - allow for (void) idiom in function prototypes; - all fixed-state uniforms are updated; - local variable initializers are working; - implement texture* and shadow* functions for vertex processor; - generate error if too many arguments in general constructor; - trim unused data in general constructor; - struct r-value field select was badly relocated; Changes: - add derived state gl_fog_attrib::_Scale; - add derived state gl_light::_CosCutoffNeg;
2006-02-13Add ARB_vertex_shader stage just before render stage.Michal Krol
If enabled, all other stages, except render, are disabled.
2005-04-22Simplify the pipeline_stage structureKeith Whitwell
- remove input/output fields, input tracking removed. - remove state fields, the validate function now called on every statechange. - add an explicit 'create' function. Add in code to build vertex program to implement current t&l state. Still disabled, but turn on with a #define in t_vp_build.h.
2005-02-10mesa-tnl-0-to-NULL.patch from Jeff MuizelaarKeith Whitwell
2004-08-10added some handy debug code (disabled)Brian Paul
2004-07-23minor commentsBrian Paul
2004-05-10Add EXT_vertex_cull support to mesaKeith Whitwell
2004-04-23Added ctx->Vertex/FragmentProgram._Enable flags. Set when vertex/fragmentBrian Paul
program is enabled AND the currently bound program is valid. Check _Enable instead of Enable to prevent things from blowing up when someone calls glEnable(GL_VERTEX_PROGRAM_ARB) without actually defining a program.
2003-11-24Merge vtx-0-2-branchKeith Whitwell
2003-06-05Removed all RCS / CVS tags (Id, Header, Date, etc.) from everything.Ian Romanick
2003-03-01Killed mmath.[ch]. Moved low-level functions/assembly code into imports.[ch]Brian Paul
Moved type conversion and interpolation macros into macros.h Updated all the files that used to include mmath.h
2002-10-31tweak pipeline flags for vertex programmingBrian Paul
2002-10-29updated email addressesBrian Paul
2002-10-24Header file clean-up:Brian Paul
1. Remove all.h and PC_HEADER junk. 2. Rolled mem.c and mem.h into imports.c and imports.h 3. Include imports.h instead of mem.h Restore _mesa_create/initialize_context() to be like they were in 4.0.4 New wrappers for a few std C functions: _mesa_atoi(), _mesa_strstr(), etc.
2002-04-09bring in changes from dri tcl branchKeith Whitwell
2002-03-29Replaced ClipEnabled[] array and _AnyClip with ClipPlanesEnabled bitmask.Brian Paul
2002-01-22Clean-up/renaming of the per-vertex attribute bits, specifically, theBrian Paul
VERT_BIT_* flags are new and used in many places (esp in T&L code). Updated some comments for doxygen. Various code clean-ups.
2001-12-18Replace old matrix stacks with new code based on struct matrix_stack.Brian Paul
Moved vertex program hash table into shared context state. Implemented reference counting for vertex programs. Replaced tnl "ProjectedClip" with "Ndc" (normalized device coordinates).
2001-12-14vertex program check-inBrian Paul
2001-05-30rerun vertex stage on _MESA_NEW_NEED_EYE_COORDSKeith Whitwell
2001-03-29Removed DD_Z_NEVER.Brian Paul
Replaced SEPERATE with SEPARATE. Renumbered _NEW_ flags. Removed _NEW_COLORTABLE.
2001-03-12Consistent copyright info (version number, date) across all files.Gareth Hughes
2001-03-07fixed a bunch of g++ warnings/errors. Compiling with g++ can help find lots ↵Brian Paul
of potential problems
2001-03-03more namespace clean-upsBrian Paul
2001-03-03lots of gl_*() to _mesa_*() namespace clean-upBrian Paul
2001-01-29Removed knowledge of swrast Clear/Bitmap/Accum/Draw/Read/CopyPixelsKeith Whitwell
functions from core mesa -- if drivers need these fallbacks they must now call them themselves. Introduced hooks for clip-vertex-interpolation and the rendering of clipped lines and polygons. Allows drivers to interpolate their hardware-format vertices directly. Used in dri drivers to replace fastpath code. Slight optimizations to pipeline build/run routines.
2001-01-13Fix crash in book/stencil.Keith Whitwell
Allow drivers to perform the perspective divide themselves. Assembly to do cliptesting without perspective divide for size-4 vectors.
2000-12-26Major rework of tnl moduleKeith Whitwell
New array_cache module Support 8 texture units in core mesa (now support 8 everywhere) Rework core mesa statechange operations to avoid flushing on many noop statechanges.