summaryrefslogtreecommitdiff
path: root/src/mesa/swrast_setup/ss_context.c
AgeCommit message (Collapse)Author
2008-10-08mesa: fix vertex format/attribute bugBrian Paul
If the tnl output attributes matches the swsetup input attributes we still need to check if the desired vertex color type (float vs. chan) has changed so that we use the right emit functions. Fixes a conformance failure found with logicop test at pathlevel 3.
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...
2007-11-30fix broken two-sided stencilBrian
2007-07-06In _swsetup_Translate(), update dest->attrib[FRAG_ATTRIB_COL0].Brian
Also, check if we're in RGB vs. CI mode. This fixes a problem with incorrect rendering color seen with the redbook/polys demo.
2007-06-28added comment, remove dead codeBrian
2007-06-22Fix feedback color bug #11332. In feedback mode, produce float colors.Brian
2007-05-23Fix problem w/ two-sided lighting and fragment programs (depth-peel regression)Brian
2007-05-20Overhaul/simplify SWvertex and SWspan attribute handling.Brian
Instead of separate fog/specular/texcoord/varying code, just treat all of them as generic attributes. Simplifies the point/line/triangle functions.
2007-05-02Document a deficiency in the _swrast_Translate() function with regard to ↵Brian
point size.
2007-04-28use EMIT_1F or EMIT_4F for fog depending on fragment program (bug 10788)Brian
2007-04-23remove SWvertex->fog field, use attrib fieldBrian
2007-04-23some re-org, clean-upBrian
2007-02-05Merge SWvertex texcoord and varying fields into attrib[] array field.Brian
Fragment texcoords and varying code is now unified in the point/line/triangle rasterization code. In the future, merge color, fog, etc. attribs.
2006-12-21s/attribute/varying/Brian
2006-12-15varying var changesBrian
2006-06-14s/ATTRIBUTE/GENERIC/Brian Paul
2006-06-14Rename _TNL_ATTRIB_ATTRIBUTE* to _TNL_ATTRIB_GENERIC*Brian Paul
2006-04-25Put color index attribute into the 6th attribute slot.Brian Paul
Update a lot of loops, conditionals to use the _TNL_FIRST/LAST_* values instead of specific vertex attributes. Remove the EdgeFlagv function from the GLvertexformat struct.
2006-04-14s/MaxTextureUnits/MaxTextureCoordUnits/Brian Paul
2006-04-11More GLSL code:Michal Krol
- use macros to access and modify render inputs bit-field; - un-alias generic vertex attributes for ARB vertex calls; - use MAX_VERTEX_PROGRAM_ATTRIBS (NV code) or MAX_VERTEX_ATTRIBS (ARB code) in place of VERT_ATTRIB_MAX; - define VERT_ATTRIB_GENERIC0..15 for un-aliased vertex attributes for ARB_vertex_shader; - fix generic attribute index range check in arbprogparse.c; - interface GLSL varyings between vertex and fragment shader; - use 64-bit optimised bitset (bitset.h) for render inputs;
2004-03-21fix array index error in _swsetup_Translate (Felix)Brian Paul
2004-02-04fix two-sided lighting / vertex program bug (#887330)Brian Paul
2004-01-13change type of loop index var to remove compiler warning.Karl Schultz
2004-01-06Fixes for _swsetup_Translate()Keith Whitwell
2004-01-05Beef up t_vertex.c:Keith Whitwell
- cope with input vectors with size less than that of the emitted attribute. - cope with vertices with 'holes' inside and between vertices. Fix calculation of tnl->render_inputs to work with fp programs. Mirror VB->PointSizePtr in VB->AttribPtr so that it can work with t_vertex.c. Transition swrast_setup/ to use t_vertex.c to build swrast vertices.
2004-01-05Re-commit t_vertex.[ch] changes to fd.o server.Keith Whitwell
2003-10-22Initial work for bounds checking of vertex arrays and vertex buffer objects.Brian Paul
Only glDrawArrays() done so far. Simplified glVertex/Color/etcPointer functions. Misc casts added here and there.
2003-06-05Removed all RCS / CVS tags (Id, Header, Date, etc.) from everything.Ian Romanick
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-10-04multiple GL_POINTS can now be rendered together into one fragment spanBrian Paul
2002-09-17pull-in changes from DRI/Mesa-4.0.4Brian Paul
2002-08-08initialize SWvertex array to zerosBrian Paul
2001-07-17Lighting now emits colors as CHAN_TYPE, as it used to. This will requireKeith Whitwell
minor adjustments in the dri drivers for twosided lighting to work again.
2001-07-12Rename some of the tnl->Driver.* functions to tnl->Driver.Render.*, to make itKeith Whitwell
clear that these are owned by t_vb_render.c. Make swrast_setup opaque - it now hooks itself directly into tnl->Driver.Render.*. Add a _swsetup_Wakeup() call that does this. Update X11 (tested), osmesa and FX drivers for this change. FX compiles but is probably broken as the changes there are large. It was the only remaining driver that used the internal _swsetup_ functions for interp and copy_pv. This usage has been replaced with code from the DRI tdfx driver.
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-02-16Allow swrast to cope (fairly) cleanly with GL_SEPERATE_SPECULAR whenKeith Whitwell
texturing is not enabled, and without requiring the two colors be added externally. As a part of this, collapsed the decomposition of quads into triangles inside swrast to be hardwired into _swrast_Quad; removed s_quads.[ch]. Removed checks on texture state from t_vb_light.c, which was previously required by swrast. Moved the t_dd_ templates to a new directory.
2001-02-16Fixed conform problems with recent material tracking change.Keith Whitwell
Remove redundant 'update_materials' stage. Fix conform segfault with seperate specular colors in mustpass.c. These tests still fail, however.
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-16Fix several conformance problems. Hack solution to line stipple problem.Keith Whitwell
2001-01-08Add a 'RenderPrimitive' callback to t_vb_render.c. Helps out driversKeith Whitwell
that used to require a 'ReducedPrimitiveChange' callback. Various compilation fixes for XFree86. Reverted to the older version of glcore.h used internally in XFree86, and moved it to 'Mesa/include/GL/internal/glcore.h', for compatibility with XFree86.
2001-01-05Remove 'pv' parameter from Line/Tri/Point funcs. The provoking vertexKeith Whitwell
is always the last vertex parameter. Modify clipping to preserve pv colors. Modify swrast and X11 driver to expect the pv in the last vertex (was looking in the first vertex previously). Remove all handling of flatshading from swrast_setup. Allow drivers to override the unclipped render tabs in tnl_render_stage directly. (Like in 3.4). Removed fxsimplerender stage. Modified t_vb_rendertmp.h to remove the need for 'parity' arguments in RENDER_TRI macros.
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.
2000-11-16Move the transform and lighting code to two new directoriesKeith Whitwell
math: Provides basic matrix and vector functionality that might be useful to multiple software t&l implementations, and is used by core mesa to manage the Model, Project, etc matrices. tnl: The real transform & lighting code from core mesa, including everything from glVertex3f through vertex buffer handling, transformation, clipping, lighting and handoff to a driver for rasterization. The interfaces of these can be further tightened up, but the basic splitting up of state and code move is done.
2000-11-13Cleanup of derived state calculation prior to seperating software T&LKeith Whitwell
into a new directory. Specifically the handling of changes to lighting lighting space (light in model vs. light in eye) have been revamped. Moved several derived values used only by swrast into that directory. Removed direct calls to swrast_flush() from vbrender.c -- pushed into ctx->Driver.RenderFinish. Optimized flat-shading case in swrast_setup.
2000-11-10minor changes to silence compiler warningsBrian Paul
2000-11-05A new module to provide RasterSetup and advanced triangle/line/pointKeith Whitwell
functionality layered on top of the software rasterizer. An example entrypoint: void _swsetup_Triangle( GLcontext, GLuint, GLuint, GLuint, GLuint ) will coerce the software rasterizer to draw flat, twoside-lit, unfilled and offset triangles (including decomposition to points or lines).