Commit Graph

194 Commits

Author SHA1 Message Date
Brian Paul
59c5cf35c9 finally get rid of ctx->Texture._ReallyEnabled field 2002-10-08 23:59:33 +00:00
Brian Paul
641b2307ec removed ctx->Polygon._OffsetAny - not really needed 2002-10-02 21:44:08 +00:00
Brian Paul
89fb06fcc1 new texture compression infrastructure 2002-09-27 02:45:37 +00:00
Brian Paul
6a1e1623fd hook-up dispatch for glActiveStencilFaceEXT() 2002-09-06 03:20:21 +00:00
Brian Paul
5f60a0b50a GL_EXT_stencil_two_side extension, not 100% complete yet. 2002-09-06 02:56:08 +00:00
Brian Paul
3b4fbbc129 Overhaul of glRead/DrawBuffer() code. Now, swrast->Driver.SetBuffer()
indicates the read AND draw color buffer for all software rasterization.
Lots of related clean-ups.  See RELNOTES-4.1 for details.
2002-07-09 01:22:50 +00:00
Brian Paul
2525bc7d30 Implemented GL_EXT_multi_draw_arrays: glMultiDrawArraysEXT() and glMultiDrawElementsEXT(). 2002-06-30 15:47:00 +00:00
Brian Paul
0c3f820bf0 remove an unneeded statement in update_polygon(), added a comment 2002-06-25 02:31:37 +00:00
Brian Paul
1043a6498a fix a comment 2002-06-16 01:14:22 +00:00
Brian Paul
8afe7de8de Implemented GL_NV_texture_rectangle extension.
Replace struct gl_texure_object's Dimension w/ Target field.
Added _EnabledUnits to struct gl_texture_attrib - the _ReallyEnabled
  field is obsolete, but still present for now.  This effectively
  removes the 8-texture units limit, 32 units now possible, but unlikely!
New TEXTURE_1D/2D/3D/CUBE/RECT_BIT tokens for unit->_ReallyEnabled field.
Updated device drivers to use ctx->Texture._EnabledUnits.
2002-06-15 03:03:06 +00:00
Brian Paul
f21a4872e8 replaced hard-coded 4 with NUM_TEXTURE_TARGETS 2002-06-06 16:31:24 +00:00
Brian Paul
60f1a3c288 Added GL_NV_point_sprite functions: glPointParameteri[v]NV().
Removed dead ARB_window_pos functions (we alias the MESA_window_pos funcs).
2002-05-29 15:16:01 +00:00
Brian Paul
23d8ef3937 dispatch offsets for ARB_window_pos 2002-05-27 17:03:08 +00:00
Keith Whitwell
306d3fcdba bring in changes from dri tcl branch 2002-04-09 16:56:50 +00:00
Brian Paul
1537b63fce GL_ARB_point_parameters support 2002-04-02 16:15:16 +00:00
Brian Paul
103bc0f75c Replaced ClipEnabled[] array and _AnyClip with ClipPlanesEnabled bitmask. 2002-03-29 17:27:59 +00:00
Brian Paul
f7c830e35c rename ResizeBuffersMESA to ResizeBuffers 2002-03-16 18:07:39 +00:00
Keith Whitwell
0cb28418d0 More suport for t&l drivers
Fix GLuint compare bugs
Fix RESET_STIPPLE calls
2002-02-13 00:53:19 +00:00
Brian Paul
c6755aa6d5 set _NeedEyeCoords to zero if vertex program is enabled 2002-01-12 02:55:30 +00:00
Brian Paul
30f51ae067 Replace old matrix stacks with new code based on struct matrix_stack.
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-18 04:06:44 +00:00
Brian Paul
b638c34381 minor dispatach table changes 2001-12-14 03:13:04 +00:00
Brian Paul
86b842790b vertex program check-in 2001-12-14 02:50:01 +00:00
Brian Paul
471a774f43 dispatch changes to minimize hassle with XFree86 libGL 2001-12-04 23:43:31 +00:00
Brian Paul
5b7dab2e4c added test implementation of GL_ARB_window_pos 2001-11-18 23:52:37 +00:00
Brian Paul
b5fd886ee1 API dispath updates 2001-11-18 22:48:11 +00:00
Karl Schultz
7b9fe820a3 more compiler warning fixes 2001-09-18 23:06:14 +00:00
Brian Paul
1b25898946 Consolidated source files. Since the re-org a number of source files
only had one or two functions left in them.
2001-06-18 17:26:08 +00:00
Brian Paul
e4276667da Enable GL_ARB_texture_compression for XMesa/GLX driver. Texture
compression isn't really implmented.  Just updated glTexImageXD()
to accept compressed internal format tokens.
2001-06-15 14:18:46 +00:00
Brian Paul
736fcbec47 infrastructure for GL_ARB_multisample 2001-05-29 15:23:48 +00:00
Keith Whitwell
8b6a91a93f Set 'prefer_float_colors' true, now that tnl uses them natively.
Apply Jeff Epler's optimization to ci spans as well, remove old code.
2001-05-10 15:42:42 +00:00
Keith Whitwell
ed39a43b8c Remove ENABLE_* flags, ctx->_Enabled.
Replace with ctx->Texture._TexMatEnabled, ctx->Texture._TexGenEnabled.
2001-03-29 21:16:25 +00:00
Keith Whitwell
3d5815f463 Removed DD_STENCIL, DD_FEEDBACK, DD_SELECT.
Added some switchable debug to s_context.c
2001-03-29 17:08:26 +00:00
Keith Whitwell
7098924599 Split driver struct into swrast/tnl/core components. 2001-03-19 02:25:35 +00:00
Gareth Hughes
22144ab755 Consistent copyright info (version number, date) across all files. 2001-03-12 00:48:37 +00:00
Brian Paul
0883634178 lots of gl_*() to _mesa_*() namespace clean-up 2001-03-03 20:33:27 +00:00
Brian Paul
c499ce31ba Implemented GL_SGIX_shadow and GL_SGIX_shadow_texture.
Added some const keywords in the s/w texturing code.
2001-02-20 16:42:25 +00:00
Keith Whitwell
2448fc7dee Fixed conform problems with recent material tracking change.
Remove redundant 'update_materials' stage.
Fix conform segfault with seperate specular colors in mustpass.c.  These
tests still fail, however.
2001-02-16 00:35:34 +00:00
Brian Paul
479fa1db1d added debug assertions to be sure drivers initialize all required function pointers 2001-02-12 19:04:30 +00:00
Brian Paul
8e39ad2cd6 Overhaul of texture image handling.
1. gl_texture_image struct's Data pointer points to images in driver's format.
2. Added FetchTexel() function pointer to struct gl_texture_image.
3. Changed Driver Tex[Sub]Image functions, return void now.
4. Texture storage/fetch code in new texstore.c file.
5. Removed texture.[ch] - functions moved to state.c

Note: FX driver updates not finished yet.
2001-02-06 21:42:48 +00:00
Brian Paul
ab36c9aa1c removed the unused/broken GL_PGI_misc_hints extension 2001-01-24 04:56:19 +00:00
Keith Whitwell
bfa023921c Still need 'DD_TRI_CULL_FRONT_BACK' 2001-01-08 17:42:13 +00:00
Keith Whitwell
cab974cf6c Major rework of tnl module
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-12-26 05:09:27 +00:00
Brian Paul
f1d6b38441 Polygon._OffsetAny wasn't being computed 2000-12-16 00:19:12 +00:00
Brian Paul
06d05afdd6 Initial work on GL_MESA_sprite_point extension.
Still need to resolve clipping issues, finalize the spec.
2000-12-08 00:20:15 +00:00
Brian Paul
45015e4d79 Pass scale and bias values to _mesa_scale_and_bias_rgba().
Implemented post-convolution scale and bias operation.
2000-11-28 00:07:51 +00:00
Brian Paul
a864432fb4 Added MaxClipPlanes and MaxLights to gl_constants struct so T&L
drivers can report non-default numbers of lights and clip planes.
2000-11-27 18:22:13 +00:00
Keith Whitwell
ad2ac216fa Support for swappable t&l modules, including an example one in the FX
driver (enable with FX_ALLOW_VTXFMT=t).
2000-11-24 10:25:05 +00:00
Jouk Jansen
5e3bc0c2a2 Committing in .
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.

----------------------------------------------------------------------
2000-11-22 07:32:16 +00:00
Brian Paul
a852378a62 Replaced Texture.CurrentD[] with separate Texture.Current1/2/3D vars.
Completely removed the dirty texture object list.  Set texObj->Complete
to GL_FALSE to indicate dirty.
Made point/line/triangle/quad SWvertex parameters const.
Minor code clean-ups.
2000-11-19 23:10:25 +00:00
Keith Whitwell
23caf20169 Move the transform and lighting code to two new directories
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-16 21:05:34 +00:00