summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/matrix.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix copy-and-paste mistake in comment ("scaling" should read "translation").Gary Wong2006-12-151-1/+1
| | | | Before _mesa_Translatef().
* Replace ctx->Const.MaxTextureUnits w/ ctx->Const.MaxTexture[Coord/Image]UnitsBrian Paul2006-04-141-0/+4
| | | | | | in various places. Note that ctx->Texture.CurrentUnit needs to be tested against Coord/Image limits when referenced, not just in glActiveTexture().
* Silence minor compiler warnings (-Wextra).Brian Paul2006-04-051-2/+2
|
* Update the _WindowMap matrix in _mesa_set_viewport() and _mesa_DepthRange().Brian Paul2006-03-291-6/+28
| | | | | This is a temporary fix for the DRI drivers. Should really only have to update the matrix via _mesa_update_state().
* Move the computation of the viewport matrix into a new update_viewport_matrix()Brian Paul2006-03-291-47/+11
| | | | | | | function since the matrix depends on the viewport params and the framebuffer's depth buffer resolution. Fixes some renderbuffer / depth range issues. This simplifies the _mesa_set_viewport() and _mesa_DepthRange() functions too.
* Add a set of predicate functions for testing matrices instead of directlyBrian Paul2005-06-301-32/+21
| | | | | | testing the flags field. Move definition of all the MAT_FLAGs into the m_matrix.c file since they're now private.
* Major check-in of changes for GL_EXT_framebuffer_object extension.Brian Paul2005-05-041-4/+12
| | | | | | | Main driver impacts: - new code for creating the Mesa GLframebuffer - new span/pixel read/write code Some drivers not yet updated/tested.
* clamp viewport against ctx->Const.MaxViewportWidth/Height instead of ↵Brian Paul2005-02-021-4/+4
| | | | MAX_WIDTH/HEIGHT
* Remove _mesa_ResizeBuffersMESA() call from _mesa_set_viewport().Brian Paul2004-11-271-14/+3
| | | | | | | | Now, the driver's Viewport routine should call _mesa_ResizeBuffersMESA() if necessary. Cleaned up code related to GLframebuffer width/height initialization. Set initial viewport/scissor params in _mesa_make_current2(), instead of in the drivers' MakeCurrent functions.
* small correctionsDaniel Borca2004-06-071-1/+1
|
* Add EXT_vertex_cull support to mesaKeith Whitwell2004-05-101-1/+12
|
* remove redundant call to ctx->Driver.Viewport(), and clean-upsBrian Paul2004-03-181-9/+1
|
* more descriptive error messages for matrix stack over/underflowsBrian Paul2004-03-131-4/+20
|
* Added GLAPIENTRY decorations for all first level OpenGL API function entryKendall Bennett2003-10-211-22/+22
| | | | | points so that the calling conventions will work correctly with the assembler stubs with the Open Watcom compiler.
* Silence compiler warnings about implicit casts or conversions by supplying ↵Karl Schultz2003-08-301-1/+1
| | | | explicit casts and/or tweaking constant and variable definitions.
* Fix up some loose ends from the last big check-in.Brian Paul2003-07-181-0/+1
|
* Merge Jose's documentation and core Mesa changes from embedded branchKeith Whitwell2003-07-171-70/+495
|
* comments regarding window sizingBrian Paul2003-06-041-4/+11
|
* minor re-org of program matrix, program local parameter limitsBrian Paul2003-04-181-6/+29
|
* Killed mmath.[ch]. Moved low-level functions/assembly code into imports.[ch]Brian Paul2003-03-011-4/+3
| | | | | Moved type conversion and interpolation macros into macros.h Updated all the files that used to include mmath.h
* Header file clean-up:Brian Paul2002-10-241-7/+3
| | | | | | | | 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.
* minor error message changesBrian Paul2002-08-211-5/+6
|
* added some _mesa_debug() callsBrian Paul2002-06-231-1/+24
|
* Added ctx parameter to _mesa_debug()Brian Paul2002-06-151-7/+7
| | | | | | Added _mesa_printf() Updated SetDrawBuffer() function in all drivers (ala 4.0.3) Import 4.0.3/DRI changes.
* New _mesa_debug() function to replace fprintf() calls.Brian Paul2002-06-131-6/+6
| | | | | | | | Some source files updated to call _mesa_debug(), but not finished. Added __GLimports as a parameter to _mesa_create/init_context() and updated drivers accordingly. Fleshed-out more of the __GLimports and __GLexports functionality. Removed run-time config file support (config.c)
* Test for NULL pointer for LoadMatrix(), MultMatrix() andAlan Hourihane2002-04-221-1/+9
| | | | | Load/MultTransposeMatrix() and return without recording any errors or doing any multiplication.
* fixed a multitexture MatrixMode() bugBrian Paul2002-02-151-2/+2
|
* Replace old matrix stacks with new code based on struct matrix_stack.Brian Paul2001-12-181-176/+70
| | | | | | Moved vertex program hash table into shared context state. Implemented reference counting for vertex programs. Replaced tnl "ProjectedClip" with "Ndc" (normalized device coordinates).
* vertex program check-inBrian Paul2001-12-141-14/+40
|
* compiler warningsKarl Schultz2001-09-181-12/+16
|
* removed old, redundant CurrentTransformUnit state varBrian Paul2001-06-121-4/+4
|
* fix for gl_ztrick bug (Ove Kaaven)Brian Paul2001-03-191-3/+6
|
* lots of gl_*() to _mesa_*() namespace clean-upBrian Paul2001-03-031-26/+22
|
* gl_error clean-upsBrian Paul2001-02-131-2/+2
|
* replaced frustrum with frustumBrian Paul2001-02-051-2/+2
|
* Replaced struct gl_visual with struct __GLcontextModesRec from glcore.h.Brian Paul2001-01-231-6/+6
| | | | | Replace "RGBAMode" with "rgbMode", etc. Other minor clean-ups.
* Major rework of tnl moduleKeith Whitwell2000-12-261-9/+21
| | | | | | | 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.
* Support for swappable t&l modules, including an example one in the FXKeith Whitwell2000-11-241-4/+4
| | | | driver (enable with FX_ALLOW_VTXFMT=t).
* Committing in .Jouk Jansen2000-11-221-20/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. ----------------------------------------------------------------------
* Move the transform and lighting code to two new directoriesKeith Whitwell2000-11-161-1101/+50
| | | | | | | | | | | | | | | 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.
* Cleanup of derived state calculation prior to seperating software T&LKeith Whitwell2000-11-131-11/+1
| | | | | | | | | | | | 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.
* - Changes for new software rasterizer modulesKeith Whitwell2000-11-051-25/+16
| | | | | | | | | - Remove support for choosing software fallbacks from core code - Remove partial fallback code from vbrender.c -- drivers are now expected to be able to find a triangle/quad function for every state, even if they have to use _swsetup_Triangle or _swsetup_Quad. - Marked derived variables in the GLcontext struct with a leading underscore '_'.
* Replace the flags Mesa was using for ctx->NewState with a new setKeith Whitwell2000-10-301-50/+11
| | | | | | | | | | | | | | 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-5/+5
| | | | | | | 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.
* new comments, misc clean-upBrian Paul2000-09-171-196/+194
|
* test against an epsilon magnitude in gl_rotation_matrix()Brian Paul2000-07-311-3/+3
|
* added aligned memory allocations (Gareth Hughes)Brian Paul2000-06-271-8/+15
|
* added GL_SGI_color_matrix extensionBrian Paul2000-04-081-1/+22
|
* runtime selectable depth buffer depthBrian Paul2000-03-031-5/+5
|