summaryrefslogtreecommitdiffstats
path: root/src/mesa/vbo
Commit message (Collapse)AuthorAgeFilesLines
* mesa: fix warning message in vbo_exec_DrawRangeElements()Brian Paul2009-05-221-1/+2
|
* mesa: use Elements() for loop limitBrian Paul2009-05-221-3/+2
|
* mesa: use Elements() for loop limitBrian Paul2009-05-221-1/+1
|
* vbo: s/32/VERT_ATTRIB_MAX/Brian Paul2009-05-221-2/+2
|
* vbo: asst. reformatting, clean-upsBrian Paul2009-05-221-34/+46
|
* Merge branch 'mesa_7_5_branch'Brian Paul2009-05-221-0/+1
|\
| * vbo: fix crash in vbo_exec_bind_arrays()Brian Paul2009-05-221-0/+1
| | | | | | | | | | | | | | | | | | When a vertex shader uses generic vertex attribute 0, but not gl_Vertex, we need to set attribute[16] to point to attribute[0]. We were setting the attribute size, but not the pointer. Fixes crash in glsl/multitex.c when using the VertCoord attribute instead of gl_Vertex.
* | mesa: rename MAX_VERTEX_ATTRIBS to MAX_VERTEX_GENERIC_ATTRIBSBrian Paul2009-05-222-10/+10
| | | | | | | | | | Be clearer that this is the number of generic vertex program/shader attributes, not counting the legacy attributes (pos, normal, color, etc).
* | vbo: fix build breakage...oopsBrian Paul2009-05-211-1/+1
| |
* | vbo: comments, whitespace clean-upsBrian Paul2009-05-211-19/+26
| |
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-05-211-2/+5
|\|
| * vbo: fix incorrect loop limit in bind_array_obj()Brian Paul2009-05-211-1/+4
| | | | | | | | | | | | The generic_array[] is 16 elements in size, but the loop was doing 32 iterations. The out of bounds array write was clobbering the following inputs[] array but as luck would have it, that didn't matter.
| * mesa: use MAX_ values instead of literalsBrian Paul2009-05-211-2/+2
| |
* | mesa: added gl_array_object::Weight array fieldBrian Paul2009-05-211-1/+1
| | | | | | | | | | | | | | We don't really implement vertex weights but in the VBO code this fixes and odd case for the legacy_array[] setup. Before, the vbo->draw_prims() call was always indicating that the vertex weight array was present/enabled when it really wasn't.
* | vbo: return VP_NONE from get_program_mode() if running fixed-func vertex programBrian Paul2009-05-211-0/+2
| | | | | | | | | | | | | | If we're running a vertex program to emulated fixed-function, we still need to treat vertex arrays/attributes as if we're in fixed-function mode. This should probably be back-ported to Mesa 7.5 after a bit more testing.
* | vbo: move vp_mode enum to vbo_exec.h, use enum instead of GLuintBrian Paul2009-05-212-8/+14
| |
* | mesa: move gl_array_attrib::_MaxElement to gl_array_object::_MaxElementBrian Paul2009-05-211-2/+3
| | | | | | | | This value is per array object.
* | vbo: s/8/MAX_TEXTURE_COORD_UNITS/Brian Paul2009-05-211-1/+1
| |
* | mesa: move the NullBufferObj from GLcontext to gl_shared_stateBrian Paul2009-05-075-9/+12
| | | | | | | | | | Since shared array objects may point to the null/default buffer object, the null/default buffer object should be part of the shared state.
* | vbo: in glDraw[Range]Element() code, check for out of bounds indexesBrian Paul2009-05-071-0/+7
| | | | | | | | | | No-op the bad drawing command rather than go out of bounds and render garbage. Print a warning to alert the developer to the bad drawing call.
* | mesa: use _mesa_sizeof_type() in vbo split codeBrian Paul2009-05-071-16/+2
| |
* | mesa: vbo code reformatting, clean-up, commentsBrian Paul2009-05-071-43/+52
| |
* | mesa: in vbo split code, map buffers read-only, not write-onlyBrian Paul2009-05-071-6/+6
|/ | | | And use GL_ELEMENT_ARRAY_BUFFER where appropriate.
* vbo: cache last dlist vertex in malloced memoryKeith Whitwell2009-04-163-10/+53
| | | | | | Avoids repeated mapping of the VBO buffer on display list replay. We need access to the final vertex in order to update the GL current attrib values.
* vbo: Silence integer-to-pointer warnings.Michal Krol2009-03-151-3/+3
|
* vbo: yet tighter still usage of FLUSH_NEED_CURRENTKeith Whitwell2009-03-091-3/+3
| | | | | | | | Previous change broke redbook/polys and probably others. I'm fairly sure that drivers like r300 don't need to touch ctx->Driver.NeedVertices, but this code is incredibly fragile and I'm not confident about removing it from there. Hopefully this gets things working again.
* vbo: stricter checks on Driver.NeedFlushKeith Whitwell2009-03-091-4/+6
| | | | | | | | This variable is being used in the r300 driver to trigger a flush under circumstances unrelated to the use in the vbo module. Tighten up the checks in vbo so as to avoid conflict with r300. Reported by Maciej Cencora <[email protected]>
* mesa: s/int/GLsizeiptr/ to silence warning with 64-bit buildBrian Paul2009-03-071-1/+1
|
* vbo: make bind_array_obj() code a little more conciseBrian Paul2009-03-071-12/+13
|
* mesa: Follow ARB_map_buffer_range more stricly.José Fonseca2009-03-041-6/+9
| | | | | Namelly, FlushMappedBufferRange takes a subrange relative to the original range.
* Merge commit 'origin/master' into gallium-map-rangeJosé Fonseca2009-03-042-1/+10
|\
| * vbo: second attempt - avoid getting buffer_ptr and buffer_map out of syncKeith Whitwell2009-03-042-1/+10
| |
| * Revert "vbo: avoid getting buffer_ptr and buffer_map out of sync"Keith Whitwell2009-03-042-8/+1
| | | | | | | | | | | | This fixed a minor bug but broke everything else. This reverts commit 579ef8ab1984d895867f547afa60b3bec4c4599a.
| * vbo: avoid getting buffer_ptr and buffer_map out of syncKeith Whitwell2009-03-042-1/+8
| |
* | Merge commit 'origin/master' into gallium-map-rangeJosé Fonseca2009-03-041-6/+4
|\|
| * vbo: use FLUSH_UPDATE_CURRENT flag to indicate whether the vbo module is activeKeith Whitwell2009-03-041-6/+4
| | | | | | | | | | Add asserts for expected values on wakeup and flush. Remove cases where this flag is set or cleared except when waking up and flushing vbo module.
* | mesa: Implement and use FlushMappedBufferRange.José Fonseca2009-03-041-0/+7
| |
* | mesa: Massage the interface to more closely resemble ARB_map_buffer_rangeJosé Fonseca2009-03-031-5/+2
|/
* Merge commit 'origin/gallium-0.1'Keith Whitwell2009-03-036-59/+166
|\ | | | | | | | | | | | | | | | | | | Conflicts: scons/gallium.py src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c src/gallium/include/pipe/p_defines.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_exec_draw.c
| * vbo: missing line from previous commitKeith Whitwell2009-03-031-1/+1
| |
| * vbo: use MapBufferRange where availableKeith Whitwell2009-03-035-57/+154
| | | | | | | | | | | | Previously would have to allocate a new VBO after firing a draw command as subsequent call to Map() on old VBO might block if the driver had submitted the commands to hardware.
| * mesa: Add BeginVertices driver callKeith Whitwell2009-03-033-0/+13
| | | | | | | | | | Provides notification to the VBO modules prior to the first immediate call. Pairs with FlushVertices()
* | mesa: save some useful VBO debug/dump code (disabled)Brian Paul2009-03-021-0/+42
| |
* | mesa: get rid of _math_init()Brian Paul2009-02-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | Only VBO uses the evaluator code so call _math_init_eval() there. Only TNL uses the transform/translate code so call _math_init_transformation() and _math_init_translate9) there. This is a step toward resolving some symbol collisions between Mesa's and gallium's x86 codegen. Have VBO and TNL modules call _math_init_transformation()
* | mesa: merge gallium-0.2 into gallium-master-mergeBrian Paul2009-02-096-43/+192
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'origin/gallium-0.2' into gallium-master-merge Conflicts: Makefile docs/relnotes-7.4.html docs/relnotes.html src/mesa/drivers/dri/i965/brw_wm.h src/mesa/main/imports.c src/mesa/main/mtypes.h src/mesa/main/texcompress.c src/mesa/main/texenvprogram.c src/mesa/main/version.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_save_draw.c
| * | Merge commit 'origin/gallium-0.1' into gallium-0.2Keith Whitwell2008-10-104-33/+92
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/gallivm/instructionssoa.cpp src/gallium/auxiliary/gallivm/soabuiltins.c src/gallium/auxiliary/rtasm/rtasm_x86sse.c src/gallium/auxiliary/rtasm/rtasm_x86sse.h src/mesa/main/texenvprogram.c src/mesa/shader/arbprogparse.c src/mesa/shader/prog_statevars.c src/mesa/state_tracker/st_draw.c src/mesa/vbo/vbo_exec_draw.c
| | * mesa: replace GLuint with GLbitfield to be clearer about usageBrian Paul2008-10-073-3/+3
| | | | | | | | | | | | Also, fix up some comments to be doxygen style.
| | * mesa: update state after binding vertex list in dlist pathKeith Whitwell2008-10-071-0/+5
| | |
| | * mesa: avoid generating constant vertex attributes in fixedfunc programsKeith Whitwell2008-10-033-7/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Keep track of enabled/active vertex attributes. Keep track of potential vertex program outputs. When generating fragment program, replace references to fragment attributes which are effectively non-varying and non-computed passthrough attributes with references to the new CURRENT_ATTRIB tracked state value. Only downside is slight ugliness in VBO code where we need to validate state twice in succession.
| | * mesa: add new internal state for tracking current vertex attribsKeith Whitwell2008-10-032-26/+42
| | |