summaryrefslogtreecommitdiff
path: root/src/mesa/main/enable.c
AgeCommit message (Collapse)Author
2009-01-02Merge commit 'origin/master' into gallium-0.2Brian Paul
Conflicts: src/mesa/main/ffvertex_prog.c src/mesa/main/texenvprogram.c
2008-12-31mesa: increase max texture image units and GLSL samplers to 16Brian Paul
The max texture coord units is still 8. All the fixed-function paths are still limited to 8 too. But GLSL shaders can use more samplers now. Note that some texcoord-related data structures are declared to be 16 elements in size rather than 8. This just simplifies the code in a few places; the extra elements aren't accessible to the user. These changes haven't been extensively tested yet, but sanity checking has been done. It should be possible to increase the max image units/samplers to 32 without doing anything special. Beyond that we'll need longer bitfields in a few places.
2008-09-21mesa: point size arraysBrian Paul
2008-09-11Merge branch 'gallium-0.1' into gallium-0.2Keith Whitwell
A first attempt at moving gallium onto a branch directly off master... It will be interesting to see how much work this takes to get running. Have resolved the conflicts semi-arbitarily, not compiled or tested. Conflicts: .gitignore Makefile configs/config.mgw configs/darwin configs/darwin-x86ppc configs/default configs/freebsd-dri configs/linux-dri configs/linux-dri-xcb configs/linux-fbdev configs/linux-static configs/linux-x86-64-static configs/linux-x86-static doxygen/Makefile include/GL/gl.h progs/demos/Makefile progs/demos/descrip.mms progs/demos/texenv.c progs/egl/.gitignore progs/egl/Makefile progs/glsl/.gitignore progs/glsl/Makefile progs/glsl/convolutions.c progs/samples/Makefile.mgw progs/tests/.gitignore progs/trivial/.gitignore progs/trivial/point-param.c progs/trivial/tri.c progs/xdemos/.gitignore progs/xdemos/glthreads.c src/egl/drivers/demo/Makefile src/egl/drivers/dri/Makefile src/egl/main/Makefile src/glu/Makefile src/glu/sgi/Makefile src/glu/sgi/Makefile.mgw src/glut/glx/Makefile.mgw src/glut/os2/WarpWin.cpp src/glut/os2/glut_cindex.cpp src/glut/os2/glut_gamemode.cpp src/glut/os2/glut_win.cpp src/glut/os2/glut_winmisc.cpp src/glut/os2/os2_glx.cpp src/glut/os2/os2_menu.cpp src/glut/os2/os2_winproc.cpp src/glw/Makefile src/glx/x11/dri_glx.c src/glx/x11/glxext.c src/mesa/Makefile src/mesa/Makefile.mgw src/mesa/descrip.mms src/mesa/drivers/beos/Makefile src/mesa/drivers/common/descrip.mms src/mesa/drivers/common/driverfuncs.c src/mesa/drivers/directfb/Makefile src/mesa/drivers/dri/Makefile.template src/mesa/drivers/dri/common/dri_bufmgr.c src/mesa/drivers/dri/common/dri_bufmgr.h src/mesa/drivers/dri/common/dri_util.c src/mesa/drivers/dri/common/extension_helper.h src/mesa/drivers/dri/common/mmio.h src/mesa/drivers/dri/common/utils.c src/mesa/drivers/dri/common/utils.h src/mesa/drivers/dri/glcore/Makefile src/mesa/drivers/dri/i810/i810screen.c src/mesa/drivers/dri/i915/intel_ioctl.c src/mesa/drivers/dri/i915/intel_ioctl.h src/mesa/drivers/dri/i915/intel_screen.c src/mesa/drivers/dri/i915/server/i830_common.h src/mesa/drivers/dri/i915/server/i830_dri.h src/mesa/drivers/dri/i965/intel_screen.c src/mesa/drivers/dri/i965/server/i830_common.h src/mesa/drivers/dri/i965/server/i830_dri.h src/mesa/drivers/dri/mach64/mach64_screen.c src/mesa/drivers/dri/nouveau/nouveau_context.h src/mesa/drivers/dri/nouveau/nouveau_fifo.c src/mesa/drivers/dri/nouveau/nouveau_fifo.h src/mesa/drivers/dri/nouveau/nouveau_screen.c src/mesa/drivers/dri/nouveau/nouveau_screen.h src/mesa/drivers/dri/r128/r128_tex.h src/mesa/drivers/dri/savage/savageioctl.h src/mesa/drivers/fbdev/Makefile src/mesa/drivers/osmesa/Makefile src/mesa/drivers/osmesa/descrip.mms src/mesa/drivers/x11/Makefile src/mesa/drivers/x11/descrip.mms src/mesa/drivers/x11/xm_dd.c src/mesa/glapi/glapi.c src/mesa/glapi/glthread.c src/mesa/main/api_validate.c src/mesa/main/attrib.c src/mesa/main/bufferobj.c src/mesa/main/bufferobj.h src/mesa/main/buffers.c src/mesa/main/config.h src/mesa/main/context.c src/mesa/main/descrip.mms src/mesa/main/drawpix.c src/mesa/main/enums.c src/mesa/main/fbobject.c src/mesa/main/glheader.h src/mesa/main/imports.c src/mesa/main/mipmap.c src/mesa/main/mm.c src/mesa/main/mm.h src/mesa/main/mtypes.h src/mesa/main/points.c src/mesa/main/sources src/mesa/main/state.c src/mesa/main/texcompress_fxt1.c src/mesa/main/texenvprogram.c src/mesa/main/texobj.c src/mesa/main/texstate.c src/mesa/main/texstore.c src/mesa/math/descrip.mms src/mesa/shader/arbprogram.c src/mesa/shader/descrip.mms src/mesa/shader/prog_execute.c src/mesa/shader/prog_statevars.c src/mesa/shader/prog_statevars.h src/mesa/shader/prog_uniform.c src/mesa/shader/program.c src/mesa/shader/program.h src/mesa/shader/shader_api.c src/mesa/shader/slang/descrip.mms src/mesa/shader/slang/library/slang_vertex_builtin_gc.h src/mesa/sources src/mesa/swrast/descrip.mms src/mesa/swrast/s_drawpix.c src/mesa/swrast/s_fragprog.c src/mesa/swrast/s_readpix.c src/mesa/swrast/s_span.c src/mesa/swrast_setup/descrip.mms src/mesa/tnl/descrip.mms src/mesa/tnl/t_context.h src/mesa/tnl/t_vp_build.c src/mesa/tnl/tnl.h src/mesa/vbo/descrip.mms src/mesa/vbo/vbo_context.c src/mesa/vbo/vbo_exec_array.c src/mesa/x86-64/xform4.S src/mesa/x86/rtasm/x86sse.c src/mesa/x86/rtasm/x86sse.h windows/VC6/progs/glut/glut.dsp windows/VC7/mesa/gdi/gdi.vcproj windows/VC7/mesa/glu/glu.vcproj windows/VC7/mesa/mesa.sln windows/VC7/mesa/mesa/mesa.vcproj windows/VC7/mesa/osmesa/osmesa.vcproj windows/VC7/progs/glut/glut.vcproj windows/VC8/mesa/gdi/gdi.vcproj windows/VC8/mesa/glu/glu.vcproj windows/VC8/mesa/mesa.sln windows/VC8/mesa/mesa/mesa.vcproj windows/VC8/progs/glut/glut.vcproj
2008-08-21Call _ae_update_state when array enable state changesKrzysztof Czurylo
Basically, the application enables client vertex and color arrays, renders something, then disables color array, and renders something else (using vertex array only). Even though the color array is disabled (and the pointer is no longer valid), the driver still tries to read color data from this array (which results in an exception). This is because enabling/disabling array does not trigger _ae_update_state() and the list of enabled arrays is not updated. _ae_update_state() it's called on the first state validation only (as all the "dirty" flags are set at the beginning). Any further change to client arrays' state has no effect.
2008-06-25mesa: point size arraysBrian Paul
2008-06-12mesa: add some #if FEATURE_x testsBrian Paul
2007-12-03fix DD_TRI_LIGHT_TWOSIDE bug (#13368)Brian
2007-09-27Restore old _TriangleCaps code to fix Blender problem (bug 12164)Brian
2007-05-16Initial implementation of MESA_texture_arrayIan Romanick
Shadow sampling from texture arrays is still not implemented. Everything else should be there, though.
2007-05-10Fix reversed enable logic in enable_textureIan Romanick
Fix bug inserted in commit c9e723e5013443df984cb3987ffa3a9ba3384b89. Discovered by Oliver McFadden (z3ro).
2007-05-10Convert "bit" parameters to GLbitfield. Fix cut-and-paste bug in _mesa_IsEnabledIan Romanick
These changes are based on patch review comments from Brian Paul, Alan Hourihane, and vehemens.
2007-05-10Refactor Enable / Disable and IsEnabled bits related to texture targets.Ian Romanick
2007-03-16Colortable re-org.Brian
The pixel transfer path has three color table lookups. Use an array [3] to store that info, rather than separate variables.
2007-01-16Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa ↵Keith Whitwell
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
2006-12-13Move all the code for computing ctx->_TriangleCaps into state.c.Brian
ctx->_TriangleCaps should probably go away altogether someday...
2006-10-30better handling of current attributes. Trivial dlist and varray tests workKeith Whitwell
2006-07-18Compute ctx->Color._LogicOpEnabled in one place instead of four places!Brian Paul
2006-06-12Add support for GL_APPLE_vertex_array_object. Several test programsIan Romanick
and demos are also added. Adding basic support to drivers should be as easy as just enabling the extension, though thorough test would also be required.
2006-03-03Use standard ARB names instead of vendor-specific NV names for the ↵Roland Scheidegger
ARB/NV_vertex_program enums in common state handling code, and update comments accordingly. Change some slightly confusing code which gave the impression GL_VERTEX_PROGRAM_ARB and GL_VERTEX_PROGRAM_NV enums were different.
2006-03-02Fix more enums defined not only by one extension when queried by glGet ↵Roland Scheidegger
(GL_COLOR_SUM_EXT, GL_POINT_SPRITE_NV, GL_POINT_SPRITE_COORD_ORIGIN, GL_TRANSPOSE_CURRENT_MATRIX_ARB). Fix similar bugs (also those previously overseen dependant on NV/ARB_vertex_program) in glIsEnabled. Add missing GL_COLOR_SUM_EXT enum to glIsEnabled.
2006-03-01Fix glGet with enums which are used not only in NV_vertex_program, but other ↵Roland Scheidegger
extensions too (ARB_vertex_program, ARB_fragment_program, NV_fragment_program), if no support for NV_vertex_program is present. While here, fix return value if enum is used which is not supported by the exposed extensions (GL_INVALID_ENUM instead of GL_INVALID_VALUE). Fix some compile-time #ifs depending on NV_vertex/fragment_program which should also be dependant on ARB_vertex/fragment_program. See bug #6070
2005-12-14Removed the GL_SGIX/SGIS_pixel_texture extensions. Same thing can beBrian Paul
done with fragment programs nowadays.
2005-08-25removed GL_HP_occlusion_test extensionBrian Paul
2005-06-30Add a set of predicate functions for testing matrices instead of directlyBrian Paul
testing the flags field. Move definition of all the MAT_FLAGs into the m_matrix.c file since they're now private.
2005-05-04Major check-in of changes for GL_EXT_framebuffer_object extension.Brian Paul
Main driver impacts: - new code for creating the Mesa GLframebuffer - new span/pixel read/write code Some drivers not yet updated/tested.
2004-12-19Implement software ATI_fragment_shaderDave Airlie
no error detection, slow, may not be 100% correct but a good start
2004-12-14uint*t -> u_int*t changesAlan Hourihane
2004-11-12added DD_TRI_TWOSTENCIL to ease EXT_stencil_two_side in device driversDaniel Borca
2004-08-18check for either GL_NV_vertex_program or GL_ARB_vertex_program for some enablesBrian Paul
2004-05-10Add EXT_vertex_cull support to mesaKeith Whitwell
2004-01-27Added support for EXT_blend_equation_separate / ATI_blend_equation_separate.Ian Romanick
The internal driver interface was also changed to use BlendEquationSeparate instead of BlendEquation.
2004-01-23Don't set extra bits in FLUSH_VERTICES, fix several state bugs.Keith Whitwell
2003-11-12Ville Syrjala's logic op patchBrian Paul
2003-10-21Added GLAPIENTRY decorations for all first level OpenGL API function entryKendall Bennett
points so that the calling conventions will work correctly with the assembler stubs with the Open Watcom compiler.
2003-08-23Trivial changes to add support for GL_ARB_point_sprite, which is aIan Romanick
subset of GL_NV_point_sprite (which was already supported).
2003-07-21Initial implementation of GL_MESA_program_debug - a vertex/fragment programBrian Paul
debugging extension.
2003-07-17Merge Jose's documentation and core Mesa changes from embedded branchKeith Whitwell
2003-04-21Implemented GL_EXT_depth_bounds_test.Brian Paul
2003-04-18more GL_ARB_vertex/fragment_program bitsBrian Paul
2003-03-21fix GL_COLOR_MATERIAL bugBrian Paul
2003-03-15Fix up some fragment program texture enable issues.Brian Paul
Implemented TXD instruction.
2003-03-01Killed mmath.[ch]. Moved low-level functions/assembly code into imports.[ch]Brian Paul
Moved type conversion and interpolation macros into macros.h Updated all the files that used to include mmath.h
2003-01-26Make GL_SGI_texture_color_table work per-texture unit.Brian Paul
Clean-up and optimize _swrast_texture_table_lookup().
2003-01-21GL_SGI_texture_color_table extension (Eric Plante)Brian Paul
2003-01-14First batch of code for GL_NV_fragment_program.Brian Paul
Re-org of some GL_NV_vertex_program code. Replace MAX_TEXTURE_UNITS with MAX_TEXTURE_COORD_UNITS and MAX_TEXTURE_IMAGE_UNITS.
2002-10-24Header file clean-up:Brian Paul
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.
2002-10-16surround vertex program code with #if FEATURE_NV_vertex_program/#endifBrian Paul
2002-09-06GL_EXT_stencil_two_side extension, not 100% complete yet.Brian Paul
2002-06-29Applied Matt Sealey's patch to remove/isolate all stdio.h function calls.Brian Paul
Instead of mstdio.[ch], use imports.[ch] to isolate these functions.