summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/varray.c
Commit message (Collapse)AuthorAgeFilesLines
* mesa: Allow NULL vertex pointer without a VBOIan Romanick2012-08-291-4/+13
| | | | | | | There is text in the OpenGL 3.x specs to explicitly allow this case. Weird. Signed-off-by: Ian Romanick <[email protected]>
* mesa: Disallow VertexAttribPointer without a VAO in a core contextIan Romanick2012-08-291-0/+17
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/es: Validate glGetVertexAttribf pname in Mesa code rather than the ES ↵Ian Romanick2012-08-291-3/+12
| | | | | | | | | | | wrapper v2: Add proper core-profile and GLES3 filtering. v3: Allow glGetVertexAttribfv(0, GL_CURRENT_VERTEX_ATTRIB_ARB, param) in OpenGL 3.1, just like OpenGL ES 2.0. Signed-off-by: Ian Romanick <[email protected]>
* mesa/es: Validate VertexPointer types in Mesa code rather than the ES wrapperIan Romanick2012-08-241-7/+6
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/es: Validate TexCoordPointer size in Mesa code rather than the ES wrapperIan Romanick2012-08-241-1/+2
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/es: Validate TexCoordPointer types in Mesa code rather than the ES wrapperIan Romanick2012-08-241-8/+6
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/es: Validate NormalPointer types in Mesa code rather than the ES wrapperIan Romanick2012-08-241-5/+6
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/es: Validate ColorPointer size in Mesa code rather than the ES wrapperIan Romanick2012-08-241-1/+2
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/es: Validate ColorPointer types in Mesa code rather than the ES wrapperIan Romanick2012-08-241-7/+8
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/es: Disallow BGRA vertex arrays in ES or ES2 contextsIan Romanick2012-08-241-0/+5
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa: Rearrange array type checking, filter more types in ESIan Romanick2012-08-241-9/+25
| | | | | | | | | v2: Fix handling of GL_INT and GL_UNSIGNED_INT types pre-ES3.0, and fix handling of GL_INT_2_10_10_10_REV and GL_UNSIGNED_INT_2_10_10_10_REV in ES3.0. Based on review comments by Ken Graunke. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Replace VersionMajor/VersionMinor with a Version field.Eric Anholt2012-08-071-3/+2
| | | | | | | | | | | As we get into supporting GL 3.x core, we come across more and more features of the API that depend on the version number as opposed to just the extension list. This will let us more sanely do version checks than "(VersionMajor == 3 && VersionMinor >= 2) || VersionMajor >= 4". v2: Fix a bad <= 30 check. Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add support for using API_OPENGL_COREJordan Justen2012-07-301-1/+1
| | | | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: move gl_array_attrib::NewState to gl_array_object::NewArraysBrian Paul2012-04-201-6/+4
| | | | | | | | The field wasn't actually used before and it's not used now either. But this is a more logical place for it and will hopefully allow doing smarter draw/array validation (per array object) in the future. Reviewed-by: Mathias Fröhlich <[email protected]>
* mesa: Use array object constructor.Mathias Fröhlich2012-04-181-1/+1
| | | | | | | | This change uses the array object factory for gl_array_objects. This prevents crashes when deriving from gl_array_object. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: check for no state change in VertexAttribDivisor()Brian Paul2012-02-291-2/+8
| | | | Reviewed-by: José Fonseca <[email protected]>
* mesa: check for no state change in glPrimitiveRestartIndex()Brian Paul2012-02-201-4/+5
| | | | Reviewed-by: José Fonseca <[email protected]>
* mesa: check for no state change in Enable/DisableVertexAttribArray()Brian Paul2012-02-201-10/+22
| | | | | | | Avoid setting dirty state flags when enabling or disabling a vertex attribute arrays when there's no change. Reviewed-by: José Fonseca <[email protected]>
* mesa: add missing return after _mesa_error() in update_array()Brian Paul2012-02-201-0/+1
| | | | | | NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>
* mesa: Rename gl_array_object::VBOonly to ::ARBsemanticsIan Romanick2012-01-241-1/+1
| | | | | | | | | | | | | | There are more differences between Apple and ARB than just requiring that all arrays be stored in VBOs. Additional uses will be added in following commits. Also, set the flag at Bind time instead of Gen time. The ARB_vao spec specifies that behavior. NOTE: This is a candidate for release branches. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Support GL_VERTEX_ATTRIB_ARRAY_INTEGER in GL 3.0 contexts.Kenneth Graunke2012-01-181-1/+1
| | | | | | | | | According to Table 6.8 (Page 348) in the OpenGL 3.0 specification, glGetVertexAttribiv supports GL_VERTEX_ATTRIB_ARRAY_INTEGER. NOTE: This is a candidate for the 8.0 branch. Signed-off-by: Kenneth Graunke <[email protected]>
* mesa: use _mesa_is_bufferobj() in update_array()Brian Paul2011-11-301-1/+1
|
* mesa: distinct gl_client_array arrays are goneChia-I Wu2011-11-291-2/+0
| | | | | | Fix build errors since 762c9766c93697af8d7fbaa729aed118789dbe8e. Acked-by: Jose Fonseca <[email protected]>
* mesa: Use VERT_ATTRIB_* indexed array in gl_array_object.Mathias Fröhlich2011-11-291-55/+43
| | | | | | | | | | | | Replace the distinct struct gl_client_array members in gl_array_object by an array of gl_client_arrays indexed by VERT_ATTRIB_*. Renumber the vertex attributes slightly to keep the old semantics of the distinct array members. Make use of the upper 32 bits in VERT_BIT_*. Update all occurances of the distinct struct members with the array equivalents. Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Make gl_array_object::_Enabled 64 bits.Mathias Fröhlich2011-11-291-1/+1
| | | | | | Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Replace _NEW_ARRAY_* bits with VERT_BIT_*Mathias Fröhlich2011-11-291-18/+18
| | | | | | | | Consolidate the two distinct set of flags to use VERT_BIT_*. Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Set the "Integer" field of gl_client_array properly.Paul Berry2011-11-021-0/+1
| | | | | | | | | | | This patch ensures that gl_client_array::Integer is properly set to GL_TRUE for vertex attributes specified using glVertexAttribIPointer, and to GL_FALSE for vertex attributes specified using glVertexAttribPointer, so that the vertex attributes can be interpreted properly by driver back-ends. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* varray.c: fix logic around BGRA with ARB_vertex_type_2_10_10_10_rev.Dave Airlie2011-09-071-4/+11
| | | | | | | | | I introduced a regression in here, I've just split the logic ot now, so its easier to read/understand. Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=40664 Signed-off-by: Dave Airlie <[email protected]>
* mesa/varray: add interface support for ARB_vertex_type_2_10_10_10_rev (v2)Dave Airlie2011-09-061-7/+38
| | | | | | | | | | | This just adds all the API check for vertex arrays using 2101010 types. 2101010 is also useable with GL_BGRA. v2: fix whitespace. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: accept GL_FIXED in glVertexAttribPointer (ARB_ES2_compatibility)Marek Olšák2011-04-301-10/+13
| | | | | | | | GL_FIXED should not be accepted in the other gl*Pointer calls in OpenGL. There is a new piglit for this: arb_es2_compatibility-fixed-type. Reviewed-by: Brian Paul <[email protected]>
* mesa: fix error message textBrian Paul2011-04-061-1/+1
|
* mesa: Fix error checks in GetVertexAttrib functionsIan Romanick2011-02-041-36/+32
| | | | | | | | | Querying index zero is not an error in OpenGL ES 2.0. Querying an index larger than the value returned by GL_MAX_VERTEX_ATTRIBS is an error in all APIs. Fixes bugzilla #32375.
* mesa: support for GL_ARB_instanced_arraysBrian Paul2011-01-151-3/+39
|
* mesa: Directly include mfeatures.h in files that perform feature tests.Vinson Lee2011-01-071-0/+1
|
* mesa: allow GLfixed arrays for OpenGL ES 2.0Shuang He2010-12-091-2/+2
| | | | Signed-off-by: Brian Paul <[email protected]>
* mesa: Fix glTexCoordPointer with type GL_FIXED.Chia-I Wu2010-12-091-1/+2
| | | | GL_FIXED is also a legal type for glTexCoordPointer.
* mesa: make fixed-pt and byte-valued arrays a runtime featureBrian Paul2010-11-071-21/+25
| | | | | | These ES1 features were only tested for in the vertex array code. Checking the ctx->API field at runtime is cleaner than the #ifdef stuff and supports choosing the API at runtime.
* mesa: use GLubyte for edge flag arraysBrian Paul2010-11-021-2/+2
| | | | Fixes http://bugs.freedesktop.org/show_bug.cgi?id=31310
* mesa: remove obsolete commentBrian Paul2010-10-281-1/+0
|
* mesa: consolidate glVertex/Color/etcPointer() codeBrian Paul2010-10-281-545/+202
| | | | | This removes a bunch of similar error checking code in all the vertex pointer functions and puts nearly all the error checking in update_array().
* mesa: add gl_client_array::Integer field and related vertex array state codeBrian Paul2010-10-281-17/+86
|
* mesa: remove 'normalized' parameter from _mesa_VertexAttribIPointer()Brian Paul2010-10-281-2/+1
|
* mesa: set/get primitive restart stateBrian Paul2010-10-211-3/+4
|
* Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg2010-10-131-7/+7
|
* mesa: update to version 64 of GL/glext.hBrian Paul2010-09-141-2/+2
| | | | | | A number of other files had to be updated as well because const qualifiers were added to the glMultiDrawArrays() function. Also, GL_FIXED is now defined in glext.h.
* mesa: silence a printf warningBrian Paul2010-07-141-2/+2
|
* mesa: move all vertex array functions into varray.cBrian Paul2010-05-251-0/+242
|
* mesa: added _mesa_VertexAttribIPointer()Brian Paul2010-05-251-0/+19
|
* mesa: API and state for GL 3.1 primitive restartBrian Paul2010-04-201-0/+21
|
* mesa: Move src/mesa/glapi/dispatch.h to mesa.Chia-I Wu2010-02-251-1/+1
| | | | | | 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.