Add ES 300 matrix operations: outerProduct, determinant, inverse, and transpose, and missing ES 300 limit gl_MaxFragmentInputVectors.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@20643 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-02-20 04:42:42 +00:00
parent bd0747d6f0
commit 1f2a36bd6b
8 changed files with 122 additions and 24 deletions

31
Test/300.vert Normal file
View File

@@ -0,0 +1,31 @@
#version 300 es
uniform mat4x3 m43;
uniform mat3x3 m33;
uniform mat4x4 m44;
in vec3 v3;
in vec2 v2;
void main()
{
int id = gl_VertexID + gl_InstanceID;
int c0 = gl_MaxVertexAttribs;
int c1 = gl_MaxVertexUniformVectors;
int c2 = gl_MaxVertexOutputVectors;
int c3 = gl_MaxFragmentInputVectors;
int c4 = gl_MaxVertexTextureImageUnits;
int c5 = gl_MaxCombinedTextureImageUnits;
int c6 = gl_MaxTextureImageUnits;
int c7 = gl_MaxFragmentUniformVectors;
int c8 = gl_MaxDrawBuffers;
int c9 = gl_MinProgramTexelOffset;
int c10 = gl_MaxProgramTexelOffset;
mat3x4 tm = transpose(m43);
highp float dm = determinant(m44);
mat3x3 im = inverse(m33);
mat3x2 op = outerProduct(v2, v3);
}

View File

@@ -20,3 +20,4 @@ pointCoord.frag
array.frag
array100.frag
comment.frag
300.vert