mesa: extend vertex_array_attrib_format to support EXT_dsa
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
+6
-12
@@ -3076,8 +3076,8 @@ _mesa_VertexAttribLFormat(GLuint attribIndex, GLint size, GLenum type,
|
||||
|
||||
|
||||
static void
|
||||
vertex_array_attrib_format(GLuint vaobj, GLuint attribIndex, GLint size,
|
||||
GLenum type, GLboolean normalized,
|
||||
vertex_array_attrib_format(GLuint vaobj, bool isExtDsa, GLuint attribIndex,
|
||||
GLint size, GLenum type, GLboolean normalized,
|
||||
GLboolean integer, GLboolean doubles,
|
||||
GLbitfield legalTypes, GLsizei sizeMax,
|
||||
GLuint relativeOffset, const char *func)
|
||||
@@ -3094,13 +3094,7 @@ vertex_array_attrib_format(GLuint vaobj, GLuint attribIndex, GLint size,
|
||||
if (!vao)
|
||||
return;
|
||||
} else {
|
||||
/* The ARB_direct_state_access spec says:
|
||||
*
|
||||
* "An INVALID_OPERATION error is generated by
|
||||
* VertexArrayAttrib*Format if <vaobj> is not [compatibility profile:
|
||||
* zero or] the name of an existing vertex array object."
|
||||
*/
|
||||
vao = _mesa_lookup_vao_err(ctx, vaobj, false, func);
|
||||
vao = _mesa_lookup_vao_err(ctx, vaobj, isExtDsa, func);
|
||||
if (!vao)
|
||||
return;
|
||||
|
||||
@@ -3136,7 +3130,7 @@ _mesa_VertexArrayAttribFormat(GLuint vaobj, GLuint attribIndex, GLint size,
|
||||
GLenum type, GLboolean normalized,
|
||||
GLuint relativeOffset)
|
||||
{
|
||||
vertex_array_attrib_format(vaobj, attribIndex, size, type, normalized,
|
||||
vertex_array_attrib_format(vaobj, false, attribIndex, size, type, normalized,
|
||||
GL_FALSE, GL_FALSE, ATTRIB_FORMAT_TYPES_MASK,
|
||||
BGRA_OR_4, relativeOffset,
|
||||
"glVertexArrayAttribFormat");
|
||||
@@ -3148,7 +3142,7 @@ _mesa_VertexArrayAttribIFormat(GLuint vaobj, GLuint attribIndex,
|
||||
GLint size, GLenum type,
|
||||
GLuint relativeOffset)
|
||||
{
|
||||
vertex_array_attrib_format(vaobj, attribIndex, size, type, GL_FALSE,
|
||||
vertex_array_attrib_format(vaobj, false, attribIndex, size, type, GL_FALSE,
|
||||
GL_TRUE, GL_FALSE, ATTRIB_IFORMAT_TYPES_MASK,
|
||||
4, relativeOffset,
|
||||
"glVertexArrayAttribIFormat");
|
||||
@@ -3160,7 +3154,7 @@ _mesa_VertexArrayAttribLFormat(GLuint vaobj, GLuint attribIndex,
|
||||
GLint size, GLenum type,
|
||||
GLuint relativeOffset)
|
||||
{
|
||||
vertex_array_attrib_format(vaobj, attribIndex, size, type, GL_FALSE,
|
||||
vertex_array_attrib_format(vaobj, false, attribIndex, size, type, GL_FALSE,
|
||||
GL_FALSE, GL_TRUE, ATTRIB_LFORMAT_TYPES_MASK,
|
||||
4, relativeOffset,
|
||||
"glVertexArrayAttribLFormat");
|
||||
|
||||
Reference in New Issue
Block a user