summaryrefslogtreecommitdiff
path: root/src/mesa/main/varray.c
AgeCommit message (Collapse)Author
2010-07-14mesa: silence a printf warningBrian Paul
2010-05-25mesa: move all vertex array functions into varray.cBrian Paul
2010-05-25mesa: added _mesa_VertexAttribIPointer()Brian Paul
2010-04-20mesa: API and state for GL 3.1 primitive restartBrian Paul
2010-02-25mesa: Move src/mesa/glapi/dispatch.h to mesa.Chia-I Wu
glapi/dispatch.h is a core Mesa header file. Move the header file to main/ to make this clear. It also becomes clear after this change that IN_DRI_DRIVER is only used in core Mesa to enable the remap table.
2010-02-19Replace the _mesa_*printf() wrappers with the plain libc versionsKristian Høgsberg
2010-02-03mesa: added texcoord unit assertionBrian Paul
2010-01-23mesa: add core support for ARB_half_float_vertex.Dave Airlie
Adds the extension to the list + support to the APIs. also add t_draw.c support to convert for sw rast. Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-11-16mesa: remove unused vertex array driver hooksBrian Paul
2009-09-01mesa: Make MultiDrawElements submit multiple primitives at once.Eric Anholt
Previously, MultiDrawElements just called DrawElements a bunch of times. By sending several primitives down the pipeline at once, we avoid a bunch of validation. On my GL demo, this improves fps by 2.5% (+/- .41%) and reduces CPU usage by 70.5% (+/- 2.9%) (n=3). Reviewed by: Ian Romanick <ian.d.romanick@intel.com>
2009-08-07mesa: new _mesa_copy_client_array() functionBrian Paul
2009-08-04mesa: more error message info for vertex pointer functionsBrian Paul
2009-06-22mesa: enforce the rule that arrays live in VBOs for GL_ARB_vertex_array_objectBrian Paul
2009-06-19mesa: move vertex array objects from shared state to per-contextBrian Paul
The ARB version requires VAOs to be per-context while the Apple extension was ambiguous.
2009-06-08mesa: EXT_vertex_array_bgra fixesMaciej Cencora
1) Pass the correct format when calling update_array in _mesa_VertexAttribPointerARB. 2) glVertexAttribPointerNV accepts GL_BGRA format too. 3) raise INVALID_VALUE error when format is BGRA and normalized is false in glVertexAttribPointerARB
2009-05-22mesa: use Elements() for loop limitBrian Paul
2009-05-21mesa: s/MAX_VERTEX_PROGRAM_ATTRIBS/MAX_NV_VERTEX_PROGRAM_INPUTSBrian Paul
2009-05-21mesa: freshen comments for update_array()Brian Paul
2009-05-21mesa: remove const qualifierBrian Paul
2009-05-21mesa: VertexAttribPointer commentsBrian Paul
2009-05-21mesa: call _mesa_update_array_object_max_element() before printing array infoBrian Paul
2009-05-21mesa: added _mesa_print_arrays() for debuggingBrian Paul
2009-05-07mesa: reference counting for gl_array_objectBrian Paul
Every kind of object that can be shared by multiple contexts should be refcounted.
2009-05-07mesa: Compute gl_client_array->_MaxElement during array validationBrian Paul
Used to be done in the glVertex/Normal/Color/etc/Pointer() calls but if the VBO was reallocated the size could change. New _NEW_BUFFER_OBJECT state flag.
2009-05-07mesa: use array->BufferObj instead of ctx->Array.ArrayBufferObjBrian Paul
No difference, but a little more understandable.
2009-05-07mesa: added _ElementSize field to gl_client_arrayBrian Paul
Will be handy for bounds checking later...
2009-01-23mesa: update glColorPointer, etc for GL_EXT_vertex_array_bgraBrian Paul
Add new error checking, set array state appropriately.
2008-09-21mesa: added case for fixed ptBrian Paul
2008-09-21mesa: point size arraysBrian Paul
2008-09-21mesa: GL_BYTE vertex/texcoord arraysBrian Paul
2008-09-21mesa: initial support for fixed-pt vertex arraysBrian Paul
2008-09-04mesa: improved gl_buffer_object reference countingBrian Paul
Use new _mesa_reference_buffer_object() function wherever possible. Fixes buffer object/display list crash reported in ParaView.
2008-07-29mesa: remove an error check for NV_v_p that doesn't apply to ARB_v_pBrian Paul
2008-03-09Set normalized flag for GLubyte arrays in _mesa_VertexAttribPointerNV()Markus Amsler
2008-02-04Allow first != 0 in mesa CVA handling, and add more error checking.Eric Anholt
2007-07-04Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵Brian
of -I flags.
2007-03-27fix incorrect _MaxElement calculationRoland Scheidegger
The calculation of _MaxElement was wrong if the stride was larger than elementSize, which lead to rejection of every DrawElements call which accessed the maximum element if CheckArrayBounds was enabled.
2006-09-04get rid of GL_BOOLEAN definition (bug 8113)Brian Paul
2006-06-13clean-ups and new commentsBrian 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-04-25No longer alias generic vertex attribs with conventional attribs for ↵Brian Paul
GL_ARB_vertex_program.
2006-04-13Set array normalization flag for normals, colors (Keith)Brian Paul
2006-04-11More GLSL code:Michal Krol
- use macros to access and modify render inputs bit-field; - un-alias generic vertex attributes for ARB vertex calls; - use MAX_VERTEX_PROGRAM_ATTRIBS (NV code) or MAX_VERTEX_ATTRIBS (ARB code) in place of VERT_ATTRIB_MAX; - define VERT_ATTRIB_GENERIC0..15 for un-aliased vertex attributes for ARB_vertex_shader; - fix generic attribute index range check in arbprogparse.c; - interface GLSL varyings between vertex and fragment shader; - use 64-bit optimised bitset (bitset.h) for render inputs;
2005-11-01Re-org and clean-up of vertx/fragment program limits (instructions,Brian Paul
temporaries, parameters, etc). glGetProgramivARB() now returns all the right things. Updated i915 and r300 code to initialize program native limits and current program's native instruction/temporary/etc counts.
2005-07-18Wrap every place that accesses a dispatch table with a macro. A new script-Ian Romanick
generated file, called src/mesa/glapi/dispatch.h, is added. This file contains three macros for each API function. It contains a GET, a SET, and a CALL. Each of the macros take a pointer to the context and a pointer to the dispatch table. In several threads on mesa3d-dev we discussed replacing _glapi_add_entrypoint with a new function called _glapi_add_dispatch. For this discussion, the important difference between the two is that the caller of _glapi_add_dispatch does *not* know what the dispatch offset will be at compile time. Because of this callers need to track the dispatch offset returned by _glapi_add_dispatch. http://marc.theaimsgroup.com/?t=111947074700001&r=1&w=2 The downside is that driver code then has to access the dispatch table two different ways. It accesses it using structure tags (e.g., exec->Begin) for functions with fixed offsets and via a remap table (e.g., exec[ remap->NewExtensionFunction ]) for functions without fixed offsets. Yuck! Using the macros allows both types of functions to be accessed identically. If a driver needs to set a pointer for Begin, it does 'SET_Begin(ctx, exec, my_begin_function)'. If it needs to set a pointer for NewExtensionFunction, it does 'SET_NewExtensionFunction(ctx, exec, my_NewExtensionFunction_function)'. Furthermore, if at some point in the future a static offset is assigned for NewExtensionFunction, only the macros need to change (instead of every single place that accesses a table for that function). This code differs slightly from the originally posted patches in that the CALL, GET, and SET marcos no longer take a context pointer as a parameter. Brian Paul had suggested that the remap table could be stored as a global since it would be set at CreateScreen time and would be constant for all contexts. This change reflects that feedback. http://marc.theaimsgroup.com/?t=112087194700001&r=1&w=2
2004-09-27VBO RefCount fix (David Reveman)Brian Paul
2004-03-10don't futz with GL_CLIENT_ACTIVE_TEXTURE in glClientActiveTexture (Robert ↵Brian Paul
Merrill)
2004-03-03more changes to VBO reference counting and deletionBrian Paul
2004-02-11Do more bookkeeping of vertex buffer object reference counts.Brian Paul
Incr/decr counts when doing glPush/PopClientAttrib(GL_CLIENT_VERTEX_ARRAY_BIT).
2004-01-13init an uninitialized variable. This doesn't fix a latent bug becauseKarl Schultz
the variable was multiplied by zero.