summaryrefslogtreecommitdiff
path: root/src/mesa/vbo
AgeCommit message (Collapse)Author
2010-05-03mesa: Only initialize save dispatch table for OpenGLKristian Høgsberg
2010-04-27mesa: Move GLES1/2 vbo entrypoints to vbo_exec_api.cKristian Høgsberg
This let's us drop stubs.c.
2010-04-19mesa: unmap the immediate mode VB before destroying itBrian Paul
Fixes failed assertion from fd.o bug 27713. The assertion was added with the new resource/transfer changes. This patch could apply to the 7.8 branch but it's not essential.
2010-04-04mesa: implement core Mesa support for GL_ARB_draw_instancedBrian Paul
2010-03-21vbo: Fix vbo_split_copy to pass correct max_index to draw.Pauli Nieminen
vbo_split_copy was passing one past the max_index to draw function which caused _tnl_draw_prims function to read uninitialized values from copied array. Bug was spoted in valgrind report of progs/tests/cva_huge.
2010-03-12Grammar and spelling fixesJeff Smith
Signed-off-by: Jeff Smith <whydoubt@yahoo.com> Signed-off-by: Brian Paul <brianp@vmware.com>
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-24vbo: remove dead codeBrian Paul
2010-02-19Drop macro wrappers for the aligned memory functionsKristian Høgsberg
2010-02-19Replace the _mesa_*printf() wrappers with the plain libc versionsKristian Høgsberg
2010-02-19Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versionsKristian Høgsberg
2010-02-19Remove _mesa_memcpy in favor of plain memcpy.Kenneth Graunke
This may break the SUNOS4 build, but it's no longer relevant.
2010-02-15vbo: fix broken glMultiDrawElements()Brian Paul
Seems to be a regression from commit 60b08eb1fdf287d28ec66b9282513ab35a61aee0. (cherry picked from commit c5a4cfb03ff17955c049f16ac805f5837ea4b633)
2010-02-09mesa: Enable true refcounting for NullBufferObj.Michal Krol
This object can be shared with another context, so we cannot just delete it when the owning context is being destroyed. Ensuring that buffer objects are properly refcounted guarantees NullBufferObj is destroyed when all references to it are removed.
2010-02-09mesa: Fix null buffer object reference counting.José Fonseca
Always use _mesa_reference_buffer_object, and never call ctx->Driver.DeleteBuffer() directly to prevent dangling pointers to the null buffer object. This fixes crash/assertions in sharedtex_mt and Autodesk Mudbox.
2010-02-03vbo: fix void * arithmetic warningKeith Whitwell
2010-02-03vbo: Fix up in-place splitting for non-contiguous/indexed primitives.Francisco Jerez
The in-place splitting code wasn't dealing with index buffers at all (and it was being called from vbo_split_prims for too big index buffers, causing some occasional corruption). Additionally, it wasn't taking into account primitives arrays with non-contiguous indices (e.g. given prim[0].start = 0 and prim[1].start = max_verts, it would happily call back the driver with (max_index - min_index) still greater than max_verts, causing infinite recursion). It still doesn't handle too large indexed vertex buffers: use vbo_split_copy for that.
2010-01-29vbo: fix missing state validation bugsBrian Paul
Commit 2708ddfb06a36d8568e2aa130bf1f7d551fcd309 caused a few regressions. We need to check/validate state after calling bind_arrays() because it might set the _NEW_ARRAYS flag if the varying VP inputs change. The symptom of this problem was some attribute arrays being ignored (or interpreted as constant-valued) in glDrawRangeElements or glMultiDrawElements. A follow-on patch will add some additional asserts to try to catch this kind of thing in the future. (cherry picked from commit 3cba779e16935f7c3a0bfd8af48bd5e015068e96)
2010-01-29mesa: Warn when indices are out of bounds, but do not skip the draw in debug ↵Brian Paul
builds. The driver (or preferably the hardware) should handle out of bounds indices. If there are problems then it's better to detect those in the debug builds. (cherry picked from commit e3257912e006120f6ab611e77005eed1a464030a)
2010-01-27mesa: fix int/uint comparison warningsBrian Paul
Reported by Karl Schultz.
2010-01-26vbo: if 'end' is out of bounds, clamp itBrian Paul
If we determine that the 'end' parameter to glDrawElements() is out of bounds, clamp it to the max legal index value.
2010-01-26vbo: clamp DrawElements start/end to max possible valuesBrian Paul
Some apps are sloppy with their start/end values. Clamp them to max possible values to prevent problems later.
2010-01-12vbo: Remove unnecessary headers from vbo_exec.c.Vinson Lee
2010-01-12vbo: Remove unnecessary header from vbo_exec_array.c.Vinson Lee
2010-01-12vbo: Remove unnecessary header from vbo_exec_draw.c.Vinson Lee
2010-01-12vbo: Remove unnecessary headers from vbo_save.c.Vinson Lee
2010-01-11vbo: Remove unnecessary header from vbo_save_loopback.c.Vinson Lee
2010-01-11vbo: Remove unnecessary header from vbo_split_copy.c.Vinson Lee
2009-12-11Merge branch 'mesa_7_6_branch' into mesa_7_7_branchBrian Paul
2009-12-08vbo: fix array index out of bounds error, and fix evaluator prioritiesBrian Paul
Fixes bug 25525. Plus, the GL_NV_vertex_program evaluators alias and override the convential evaluator maps, so set their state after the conventional maps.
2009-12-01vbo: make flush recursion check code per-contextBrian Paul
This fixes invalid failed assertions when running multi-threaded apps.
2009-11-19vbo: added recursion check in vbo_exec_FlushVertices()Brian Paul
2009-11-17mesa: fix assorted compiler warningsBrian Paul
2009-11-04Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/mesa/drivers/windows/gdi/mesa.def
2009-11-04vbo: fix out-of-bounds array accessBrian Paul
The exec->vtx.inputs[] array was being written past its end. This was clobbering the following vbo_exec_context::eval state. Probably not noticed since evaluators and immediate mode rendering don't happen at the same time. Fixed the loop in vbo_exec_vtx_init(). Changed the size of the vbo_exec_context::vtx.arrays[] array. Added a bunch of debug-build assertions. Issue found by Vinson Lee.
2009-10-22mesa: fix up vbo commentsBrian Paul
2009-10-14vbo: clean-ups, reformattingBrian Paul
2009-10-14mesa: added MESA_VERBOSE option 'draw' to debug glDrawArrays/Elements, etc.Brian Paul
2009-10-07mesa: rename display list functionsBrian Paul
_mesa_alloc_instruction() sounded like it was related to vertex/fragment program instructions, but it wasn't.
2009-09-30mesa/main: New feature FEATURE_beginend.Chia-I Wu
This feature corresponds to the Begin/End paradigm. Disabling this feature also eliminates the use of GLvertexformat completely.
2009-09-30mesa/main: Make FEATURE_dlist follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of dlist.h to work without knowing if the feature is available.
2009-09-30mesa/main: Make FEATURE_evaluators follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of eval.h to work without knowing if the feature is available.
2009-09-30mesa/main: New feature FEATURE_arrayelt.Chia-I Wu
This allows the removal of AEcontext.
2009-09-24Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/mesa/vbo/vbo_exec_array.c
2009-09-24vbo: limit number of warnings to 10Brian Paul
Otherwise some apps will emit tons of warnings.
2009-09-21vbo: added comment about max array indexBrian Paul
2009-09-21vbo: restore some lost warning outputBrian Paul
2009-09-21vbo: disable the GL_ARB_draw_elements_base_vertex rebase pathBrian Paul
This was introduced with commit 92d7ed8a20d4a018ce5324e6537ae7b478b9e5bf. It causes rendering of stray polygons (with sw rendering at least) when running the OGL Distilled / Picking demo (click on an object). This needs additional debugging to fix/restore. Found one suspect thing: in _tnl_draw_prims() there's some mixed signed/ unsigned arithmetic/comparing at line 422 that may be incorrect.
2009-09-21mesa: refine the error checking vbo_exec_DrawRangeElements()Brian Paul
If the 'end' index is out of bounds issue a warning as before. But instead of just no-op'ing the draw call, examine the actual array indices to see if they're OK. If the max array index is out of bounds, issue another warning and no-op the draw call. Otherwise, draw normally. This is a debug build-only feature since it could impact performance. This "fixes" the missing torus in the OGL Distilled / Picking demo.
2009-09-21mesa: refine the error checking vbo_exec_DrawRangeElements()Brian Paul
If the 'end' index is out of bounds issue a warning as before. But instead of just no-op'ing the draw call, examine the actual array indices to see if they're OK. If the max array index is out of bounds, issue another warning and no-op the draw call. Otherwise, draw normally. This is a debug build-only feature since it could impact performance. This "fixes" the missing torus in the OGL Distilled / Picking demo.