summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/light.c
Commit message (Collapse)AuthorAgeFilesLines
* s/MAX_LIGHTS/ctx->Const.MaxLights/ and spruce up some commentsBrian Paul2005-11-101-14/+22
|
* Replace GLuint with GLbitfield where appropriate. Also replace GLuintBrian Paul2005-09-151-7/+7
| | | | with GLboolean in a few places.
* Add a set of predicate functions for testing matrices instead of directlyBrian Paul2005-06-301-9/+5
| | | | | | testing the flags field. Move definition of all the MAT_FLAGs into the m_matrix.c file since they're now private.
* mesa-main-0-NULL.patch from Jeff MuizelaarKeith Whitwell2005-02-111-2/+3
|
* Silence gcc 3.4 warnings on ReactOS. Mostly unused var warnings. (patch ↵Brian Paul2004-08-251-0/+1
| | | | 1015696)
* added FLUSH_CURRENT() call in GetMaterial() callsBrian Paul2004-04-021-2/+6
|
* Don't set extra bits in FLUSH_VERTICES, fix several state bugs.Keith Whitwell2004-01-231-8/+0
|
* Correct sense of ctx->_ForceEyeCoords (Felix Kuhling)Keith Whitwell2003-12-271-1/+1
|
* Added GLAPIENTRY decorations for all first level OpenGL API function entryKendall Bennett2003-10-211-14/+14
| | | | | points so that the calling conventions will work correctly with the assembler stubs with the Open Watcom compiler.
* Remove FLT_MIN definition to imports.hBrian Paul2003-09-181-48/+40
| | | | Assorted code clean-ups in light.c
* Store material attributes in an Attrib[] style array. This is aKeith Whitwell2003-08-051-295/+126
| | | | | first step to reviving/rescuing the 'vtx' rework from the old mesa tree.
* Fix samples/fog.c regression - missing test for NeedEyeCoords.Keith Whitwell2003-08-051-6/+15
|
* Merge Jose's documentation and core Mesa changes from embedded branchKeith Whitwell2003-07-171-11/+206
|
* Removed all RCS / CVS tags (Id, Header, Date, etc.) from everything.Ian Romanick2003-06-051-1/+0
|
* Added support for NV_light_max_exponent.Ian Romanick2003-05-301-2/+2
|
* Killed mmath.[ch]. Moved low-level functions/assembly code into imports.[ch]Brian Paul2003-03-011-8/+7
| | | | | Moved type conversion and interpolation macros into macros.h Updated all the files that used to include mmath.h
* wrapped a few more C library functionsBrian Paul2002-10-251-4/+4
|
* Header file clean-up:Brian Paul2002-10-241-7/+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.
* more detailed _mesa_error() messagesBrian Paul2002-09-161-5/+6
|
* Added ctx parameter to _mesa_debug()Brian Paul2002-06-151-43/+25
| | | | | | 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-15/+15
| | | | | | | | 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)
* More suport for t&l driversKeith Whitwell2002-02-131-5/+9
| | | | | Fix GLuint compare bugs Fix RESET_STIPPLE calls
* Replace old matrix stacks with new code based on struct matrix_stack.Brian Paul2001-12-181-8/+8
| | | | | | 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-2/+2
|
* compiler warningsKarl Schultz2001-09-181-6/+6
|
* Remove _BaseAlpha, fix reflect lighting bug.Keith Whitwell2001-07-281-8/+1
|
* Don't scale basealpha by 255 now it's a float.Keith Whitwell2001-05-091-7/+7
|
* Support for floating point color representation in tnl module.Keith Whitwell2001-04-281-8/+2
|
* Removed DD_Z_NEVER.Brian Paul2001-03-291-3/+3
| | | | | | Replaced SEPERATE with SEPARATE. Renumbered _NEW_ flags. Removed _NEW_COLORTABLE.
* Consistent copyright info (version number, date) across all files.Gareth Hughes2001-03-121-20/+18
|
* fixed a bunch of g++ warnings/errors. Compiling with g++ can help find lots ↵Brian Paul2001-03-071-4/+4
| | | | of potential problems
* lots of gl_*() to _mesa_*() namespace clean-upBrian Paul2001-03-031-43/+43
|
* Allow swrast to cope (fairly) cleanly with GL_SEPERATE_SPECULAR whenKeith Whitwell2001-02-161-2/+9
| | | | | | | | | | | | | 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.
* Fix propogation of material values in VB's that don't reach the lightingKeith Whitwell2001-02-151-13/+53
| | | | | | | | | stage. (Materials now treated more like colors, etc.). Continue whipping the dd templates into shape. Remove old NormalLength code; may come back as a driver helper, but not useful for, eg. hardware t&l drivers.
* fixed bug in gl_validate_all_lighting_tables() found with CI mode ↵Brian Paul2001-02-131-3/+5
| | | | conformance tests
* Replaced struct gl_visual with struct __GLcontextModesRec from glcore.h.Brian Paul2001-01-231-2/+2
| | | | | Replace "RGBAMode" with "rgbMode", etc. Other minor clean-ups.
* Fix crash in book/stencil.Keith Whitwell2001-01-131-10/+8
| | | | | Allow drivers to perform the perspective divide themselves. Assembly to do cliptesting without perspective divide for size-4 vectors.
* added underflow check in validate_shine_table()Brian Paul2001-01-041-2/+5
|
* Removed fixed.h (GLfixed now in mtypes.h, fixed-pt macros in mmath.h)Brian Paul2001-01-021-7/+7
| | | | | Clean-up of color conversion macros. New mmath.h macros (IROUND, IFLOOR, ICEIL, FRAC) used in various places.
* Major rework of tnl moduleKeith Whitwell2000-12-261-181/+242
| | | | | | | 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.
* Added MaxClipPlanes and MaxLights to gl_constants struct so T&LBrian Paul2000-11-271-4/+4
| | | | drivers can report non-default numbers of lights and clip planes.
* Fixed a couple of bugs that crept into last commitKeith Whitwell2000-11-241-3/+3
| | | | | | | - Eval not compiled correctly - Material colors computed incorrectly Reworked the VERT_TEX flags, now support upto 12 texture units in tnl.
* Support for swappable t&l modules, including an example one in the FXKeith Whitwell2000-11-241-91/+22
| | | | driver (enable with FX_ALLOW_VTXFMT=t).
* Committing in .Jouk Jansen2000-11-221-53/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-141/+9
| | | | | | | | | | | | | | | 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.
* added includes to silence warningsBrian Paul2000-11-151-1/+2
|
* Cleanup of derived state calculation prior to seperating software T&LKeith Whitwell2000-11-131-131/+123
| | | | | | | | | | | | 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-120/+120
| | | | | | | | | - 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-37/+8
| | | | | | | | | | | | | | 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.
* renamed Current.ByteColor Current.ColorBrian Paul2000-10-291-2/+2
|