[Mesa-dev] [PATCH 1/2] mesa: GLES specifies restrictions on uniform matrix transpose.
Ian Romanick
idr at freedesktop.org
Mon May 14 11:46:15 PDT 2012
On 05/14/2012 04:56 AM, Oliver McFadden wrote:
> GL_INVALID_VALUE is generated if transpose is not GL_FALSE.
>
> http://www.khronos.org/opengles/sdk/docs/man/xhtml/glUniform.xml
>
> Signed-off-by: Oliver McFadden<oliver.mcfadden at linux.intel.com>
> ---
> src/mesa/main/uniform_query.cpp | 10 ++++++++++
> 1 files changed, 10 insertions(+), 0 deletions(-)
>
> diff --git a/src/mesa/main/uniform_query.cpp b/src/mesa/main/uniform_query.cpp
> index da41ee8..e8bdab2 100644
> --- a/src/mesa/main/uniform_query.cpp
> +++ b/src/mesa/main/uniform_query.cpp
> @@ -782,6 +782,16 @@ _mesa_uniform_matrix(struct gl_context *ctx, struct gl_shader_program *shProg,
> return;
> }
>
> + /* GL_INVALID_VALUE is generated if `transpose' is not GL_FALSE.
> + * http://www.khronos.org/opengles/sdk/docs/man/xhtml/glUniform.xml */
We usually do this sort of thing by quoting the text from the actual
spec. I usually format these comments in a specific way to make it
easier to search for them in my editor. :)
/* Page 37 (page 47 of the PDF) of the OpenGL ES 2.0.25 spec says:
*
* "The matrix is specified in column-major order. transpose
* must be FALSE."
*/
> + if (ctx->API == API_OPENGLES || ctx->API == API_OPENGLES2) {
> + if (bool(transpose)) {
> + _mesa_error(ctx, GL_INVALID_VALUE,
> + "glUniformMatrix(matrix transpose is not GL_FALSE)");
> + return;
> + }
> + }
> +
> if (ctx->Shader.Flags& GLSL_UNIFORMS) {
> log_uniform(values, GLSL_TYPE_FLOAT, components, vectors, count,
> bool(transpose), shProg, location, uni);
More information about the mesa-dev
mailing list