summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/stencil.c
Commit message (Collapse)AuthorAgeFilesLines
* mesa: fix/update/restore comments related to two-sided stencil (cherry ↵Brian Paul2009-03-131-1/+18
| | | | picked from commit a304cc6cca2ee21c3b25041abf882ef0616e5244)
* mesa: initialize ctx->Stencil._BackFace = 1Brian Paul2009-03-131-0/+1
| | | | | | | Back-face stencil operations didn't work correctly because this value was zero. It needs to be 1 or 2. The only place it's set otherwise is in glEnable/Disable(GL_STENCIL_TEST_TWO_SIDE_EXT). (cherry picked from commit 2a968113a925845331f0532a5a20d9fa1502c118)
* Track two sets of back-face stencil stateIan Romanick2009-03-131-48/+56
| | | | | | | | | | | | | Track separate back-face stencil state for OpenGL 2.0 / GL_ATI_separate_stencil and GL_EXT_stencil_two_side. This allows all three to be enabled in a driver. One set of state is set via the 2.0 or ATI functions and is used when STENCIL_TEST_TWO_SIDE_EXT is disabled. The other is set by StencilFunc and StencilOp when the active stencil face is set to BACK. The GL_EXT_stencil_two_side spec has more details. http://opengl.org/registry/specs/EXT/stencil_two_side.txt (cherry picked from commit dde7cb962860e72e1bf3175069767358cc5b3f3c)
* mesa: fix stencil state problem when GL_ATI_separate_stencil wasn't enabledBrian Paul2008-07-141-47/+49
| | | | | | | | | In glStencilFunc/Op/Mask() set both the front and back-face state, unless GL_EXT_stencil_two_side is enabled. Before, we only set the front+back state if GL_ATI_separate_stencil was enabled. Ultimately, we probably should remove GL_EXT_stencil_two_side since it's incompatible with GL 2.x.
* Alias glStencilOpSeparateATI with glStencilOpSeparate.Brian2007-10-301-72/+29
|
* Finish up ATI_separate_stencilBrian2007-10-301-158/+131
| | | | | | Add entrypoints to glapi XML file and regenerate files. Implement glStencilOpSeparateATI(). Consolidate some code in stencil.c
* add missing _mesa_StencilFuncSeparateATI functionRoland Scheidegger2007-10-301-0/+75
|
* Merge branch 'master' of git+ssh://[email protected]/git/mesa/mesa ↵Keith Whitwell2007-01-161-2/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * Undo some of yesterday's ATI_separate_stencil changes. The ATI extensionBrian Paul2006-11-021-47/+51
| | | | | | | | doesn't exactly match OpenGL 2.0.
| * Add ATI_separate_stencil and use it in preference to EXT_stencil_two_sideBrian Paul2006-11-021-52/+49
| | | | | | | | since the former is what's used for OpenGL 2.0.
* | merge current trunk into vbo branchAlan Hourihane2006-11-021-52/+49
|/
* Print the hex value of the errant input when an invalid stencil function isIan Romanick2006-06-191-1/+1
| | | | specified.
* replace STENCIL_BITS with stencilMax valueBrian Paul2005-09-201-6/+4
|
* Replace ctx->Driver.StencilOp/Func/Mask() functions withBrian Paul2005-09-131-17/+22
| | | | ctx->Driver.Stencil*Separate() functions.
* OpenGL 2.0's two-sided stencil feature wasn't implemented correctly.Brian Paul2005-09-131-38/+123
| | | | | See comment near top of stencil.c for info about OpenGL 2.0 vs. GL_EXT_stencil_two_side.
* Use GLuint/GLint intead of GLstencil for stencil state.Brian Paul2005-09-131-22/+20
|
* Some initial work for OpenGL 2.0: glStencilFunc/Op/MaskSeparate() functions.Brian Paul2005-01-121-2/+172
|
* Added GLAPIENTRY decorations for all first level OpenGL API function entryKendall Bennett2003-10-211-5/+5
| | | | | points so that the calling conventions will work correctly with the assembler stubs with the Open Watcom compiler.
* Merge Jose's documentation and core Mesa changes from embedded branchKeith Whitwell2003-07-171-3/+86
|
* Removed all RCS / CVS tags (Id, Header, Date, etc.) from everything.Ian Romanick2003-06-051-1/+0
|
* Fix typoKeith Whitwell2003-03-171-2/+2
|
* Header file clean-up:Brian Paul2002-10-241-8/+2
| | | | | | | | 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.
* GL_EXT_stencil_two_side extension, not 100% complete yet.Brian Paul2002-09-061-19/+41
|
* fixed minor logic error in _mesa_StencilOp()Brian Paul2001-05-091-2/+1
|
* Consistent copyright info (version number, date) across all files.Gareth Hughes2001-03-121-4/+3
|
* lots of gl_*() to _mesa_*() namespace clean-upBrian Paul2001-03-031-5/+5
|
* Major rework of tnl moduleKeith Whitwell2000-12-261-18/+36
| | | | | | | 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.
* Committing in .Jouk Jansen2000-11-221-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modified Files: Mesa/macos/gli_api/gliapi1.h Mesa/macos/gli_api/gliapi2.h Mesa/macos/gli_api/gliapiext.h Mesa/macos/src-gli/fxgli.c Mesa/macos/src-gli/fxgli.h Mesa/macos/src-gli/fxgli2.c Mesa/macos/src-gli/fxgli_tridebug.c Mesa/src/accum.c Mesa/src/accum.h Mesa/src/all.h Mesa/src/alpha.c Mesa/src/alpha.h Mesa/src/attrib.c Mesa/src/attrib.h Mesa/src/bitmap.c Mesa/src/bitmap.h Mesa/src/blend.c Mesa/src/blend.h Mesa/src/buffers.c Mesa/src/buffers.h Mesa/src/clip.c Mesa/src/clip.h Mesa/src/colortab.h Mesa/src/config.c Mesa/src/context.c Mesa/src/context.h Mesa/src/convolve.c Mesa/src/convolve.h Mesa/src/copypix.c Mesa/src/copypix.h Mesa/src/debug.c Mesa/src/depth.c Mesa/src/depth.h Mesa/src/dlist.c Mesa/src/dlist.h Mesa/src/drawpix.c Mesa/src/drawpix.h Mesa/src/enable.c Mesa/src/enable.h Mesa/src/eval.c Mesa/src/eval.h Mesa/src/extensions.c Mesa/src/extensions.h Mesa/src/feedback.c Mesa/src/feedback.h Mesa/src/fog.c Mesa/src/fog.h Mesa/src/get.c Mesa/src/get.h Mesa/src/glapi.c Mesa/src/glthread.h Mesa/src/highpc.c Mesa/src/hint.h Mesa/src/histogram.h Mesa/src/image.c Mesa/src/image.h Mesa/src/imports.c Mesa/src/light.c Mesa/src/light.h Mesa/src/lines.c Mesa/src/lines.h Mesa/src/logic.c Mesa/src/logic.h Mesa/src/masking.c Mesa/src/masking.h Mesa/src/matrix.c Mesa/src/matrix.h Mesa/src/pixel.c Mesa/src/pixel.h Mesa/src/points.c Mesa/src/points.h Mesa/src/polygon.c Mesa/src/polygon.h Mesa/src/rastpos.c Mesa/src/readpix.c Mesa/src/scissor.c Mesa/src/scissor.h Mesa/src/state.c Mesa/src/state.h Mesa/src/stencil.c Mesa/src/stencil.h Mesa/src/teximage.c Mesa/src/teximage.h Mesa/src/texobj.c Mesa/src/texobj.h Mesa/src/texstate.c Mesa/src/texstate.h Mesa/src/texture.c Mesa/src/texture.h Mesa/src/texutil.c Mesa/src/texutil.h Mesa/src/varray.c Mesa/src/varray.h Mesa/src/X/fakeglx.c Mesa/src/X/xm_api.c Mesa/src/X/xm_dd.c Mesa/src/X/xm_line.c Mesa/src/X/xm_span.c Mesa/src/X/xm_tri.c Mesa/src/swrast/s_aaline.c Mesa/src/swrast/s_aaline.h Mesa/src/swrast/s_aatriangle.h Mesa/src/swrast/s_accum.h Mesa/src/swrast/s_alpha.h Mesa/src/swrast/s_alphabuf.h Mesa/src/swrast/s_blend.h Mesa/src/swrast/s_context.c Mesa/src/swrast/s_context.h Mesa/src/swrast/s_depth.h Mesa/src/swrast/s_drawpix.h Mesa/src/swrast/s_feedback.h Mesa/src/swrast/s_fog.h Mesa/src/swrast/s_histogram.h Mesa/src/swrast/s_lines.h Mesa/src/swrast/s_logic.h Mesa/src/swrast/s_masking.h Mesa/src/swrast/s_pb.h Mesa/src/swrast/s_pixeltex.h Mesa/src/swrast/s_points.h Mesa/src/swrast/s_quads.c Mesa/src/swrast/s_quads.h Mesa/src/swrast/s_scissor.h Mesa/src/swrast/s_span.h Mesa/src/swrast/s_stencil.h Mesa/src/swrast/s_texture.h Mesa/src/swrast/s_triangle.h Mesa/src/swrast/s_zoom.h Mesa/src/swrast/swrast.h Mesa/src/swrast_setup/ss_context.h Mesa/src/swrast_setup/ss_triangle.c Mesa/src/swrast_setup/ss_triangle.h Mesa/src/swrast_setup/ss_vb.h Mesa/src/tnl/t_clip.c Mesa/src/tnl/t_clip.h Mesa/src/tnl/t_context.c Mesa/src/tnl/t_context.h Mesa/src/tnl/t_cva.c Mesa/src/tnl/t_cva.h Mesa/src/tnl/t_debug.c Mesa/src/tnl/t_debug.h Mesa/src/tnl/t_dlist.h Mesa/src/tnl/t_eval.c Mesa/src/tnl/t_eval.h Mesa/src/tnl/t_fog.c Mesa/src/tnl/t_fog.h Mesa/src/tnl/t_light.c Mesa/src/tnl/t_light.h Mesa/src/tnl/t_pipeline.c Mesa/src/tnl/t_pipeline.h Mesa/src/tnl/t_shade.c Mesa/src/tnl/t_shade.h Mesa/src/tnl/t_stages.c Mesa/src/tnl/t_stages.h Mesa/src/tnl/t_texture.c Mesa/src/tnl/t_texture.h Mesa/src/tnl/t_trans_elt.c Mesa/src/tnl/t_trans_elt.h Mesa/src/tnl/t_varray.c Mesa/src/tnl/t_varray.h Mesa/src/tnl/t_vb.c Mesa/src/tnl/t_vb.h Mesa/src/tnl/t_vbcull.c Mesa/src/tnl/t_vbcull.h Mesa/src/tnl/t_vbfill.c Mesa/src/tnl/t_vbfill.h Mesa/src/tnl/t_vbindirect.c Mesa/src/tnl/t_vbindirect.h Mesa/src/tnl/t_vbrender.c Mesa/src/tnl/t_vbrender.h Mesa/src/tnl/t_vbxform.c Mesa/src/tnl/t_vbxform.h Mesa/src/tnl/tnl.h Added Files: Mesa/src/mtypes.h Removed Files: Mesa/src/types.h Changed Mesa/src/types to Mesa/src/mtypes.h to avoid conflicts while compiling on a VMS system. ----------------------------------------------------------------------
* Moved the software rasterizer to a new directory.Keith Whitwell2000-10-311-1267/+1
|
* Replace the flags Mesa was using for ctx->NewState with a new setKeith Whitwell2000-10-301-4/+9
| | | | | | | | | | | | | | based on the GL attribute groups. Introduced constants describing the circumstances under which some key derived values can change: _SWRAST_NEW_RASTERMASK -- ctx->RasterMask _SWRAST_NEW_TRIANGLE -- The software rasterizer's triangle function _DD_NEW_FEEDBACK -- the 'DD_FEEDBACK' bit in ctx->TriangleCaps These are helpful in deciding whether you need to recalculate state if your recalculation involves reference to a derived value.
* more minor header file re-org (moved CONST, ASSERT, INLINE to config.h)Brian Paul2000-10-291-1/+2
|
* First batch of OpenGL SI related changes:Brian Paul2000-09-261-2/+2
| | | | | | | Renamed struct gl_context to struct __GLcontextRec. Include glcore.h, setup GL imports/exports. Replaced gl_ prefix with _mesa_ prefix in context.[ch] functions. GLcontext's Visual field is no longer a pointer.
* changed gl_frame_buffer Xmax and Ymax to be exclusive boundary valuesBrian Paul2000-09-081-8/+8
|
* added more extensions testing codeBrian Paul2000-08-301-12/+27
|
* renamed stencil functionsBrian Paul2000-04-111-14/+16
|
* clip depth/stencil spans to window boundsBrian Paul2000-04-111-43/+64
|
* replaced gl_ prefix with _mesa_ prefix on depth funcsBrian Paul2000-02-021-5/+5
|
* changes in hardware depth buffer supportBrian Paul1999-12-101-7/+5
|
* updated for hardware stencil supportBrian Paul1999-12-101-118/+386
|
* Clearing stencil buffer now observes the stencil write maskBrian Paul1999-12-041-79/+104
| | | | Optimized gl_depth_stencil_span/pixels() functions
* added support for separate read/draw buffers per contextBrian Paul1999-11-241-23/+24
|
* first big check-in of new Mesa 3.3 codeBrian Paul1999-11-111-16/+17
|
* changes to silence MSVC warningsBrian Paul1999-11-081-6/+3
|
* clean-up to reduce MSVC warningsBrian Paul1999-11-051-49/+49
|
* removed GL_ prefix from memory macrosBrian Paul1999-10-131-3/+3
|
* now using GL_MALLOC, GL_FREEBrian Paul1999-10-101-3/+3
|
* Fixed includes & added a few hooks for the DRI.kw-mesa-1Keith Whitwell1999-10-081-1/+7
|
* More Win32 build compliance fixupsTed Jump1999-09-191-1/+2
|
* Large patch:Keith Whitwell1999-09-181-2/+2
| | | | | | | | | | - FX bug fixes. - Polygon mode and edgeflag work properly. - Clipping works with edgeflag. - Driver.ReducedPrimitiveChange() callback so drivers that implement lines & points as triangles can turn culling off before rendering groups of these primitives. - Cleaned up feedback & select primitives.
* Initial revisionjtg1999-08-191-0/+1107