summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/light.c
Commit message (Collapse)AuthorAgeFilesLines
* Move all the code for computing ctx->_TriangleCaps into state.c.Brian2006-12-131-10/+4
| | | | ctx->_TriangleCaps should probably go away altogether someday...
* Color clamping fixes.Brian Paul2006-10-221-0/+1
|
* Remove carriage returns.Michal Krol2006-04-251-4/+4
|
* GLSL fixes:Michal Krol2006-03-211-8/+11
| | | | | | | | | | | | | | | | | | - generate error on NULL pointers in glShaderSourceARB; - reinstall program object, if current, in glLinkProgramARB; - vertex and fragment shaders are optional in program object; - floor asm was wrongly computed for x86 back-end; - allow for (void) idiom in function prototypes; - all fixed-state uniforms are updated; - local variable initializers are working; - implement texture* and shadow* functions for vertex processor; - generate error if too many arguments in general constructor; - trim unused data in general constructor; - struct r-value field select was badly relocated; Changes: - add derived state gl_fog_attrib::_Scale; - add derived state gl_light::_CosCutoffNeg;
* Added _mesa_light() helper function so we can avoid transforming thenBrian Paul2005-11-121-77/+128
| | | | | un-transforming light positions and spot directions when popping light state off the attribute stack.
* 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.