Re: [Mesa-dev] [PATCH 4/4] glsl: Add implementation of inverse() for mat2/3/4.

2012-04-20 Thread Eric Anholt
On Thu, 19 Apr 2012 08:34:01 -0600, Brian Paul wrote: > On 04/18/2012 07:40 PM, Eric Anholt wrote: > > + float det = (+ m[0][0] * adj[0][0] > > + + m[0][1] * adj[1][0] > > + + m[0][2] * adj[2][0] > > + + m[0][3] * adj[3][0]); > > + > > + return adj / det; > > Wou

Re: [Mesa-dev] [PATCH 4/4] glsl: Add implementation of inverse() for mat2/3/4.

2012-04-19 Thread Brian Paul
On 04/18/2012 07:40 PM, Eric Anholt wrote: This is taken from the ogl-math project, with Inverse renamed to adj (since it's not actually the inverse), transposed, and our types plugged in. Fixes piglit inverse tests. --- src/glsl/Makefile |2 +- src/glsl/builtins/glsl/in

Re: [Mesa-dev] [PATCH 4/4] glsl: Add implementation of inverse() for mat2/3/4.

2012-04-18 Thread Olivier Galibert
On Wed, Apr 18, 2012 at 06:40:32PM -0700, Eric Anholt wrote: > +mat3 inverse(mat3 m) > +{ > + mat3 adj; > + adj[0][0] = + (m[1][1] * m[2][2] - m[2][1] * m[1][2]); > + adj[1][0] = - (m[1][0] * m[2][2] - m[2][0] * m[1][2]); > + adj[2][0] = + (m[1][0] * m[2][1] - m[2][0] * m[1][1]); > + adj[

[Mesa-dev] [PATCH 4/4] glsl: Add implementation of inverse() for mat2/3/4.

2012-04-18 Thread Eric Anholt
This is taken from the ogl-math project, with Inverse renamed to adj (since it's not actually the inverse), transposed, and our types plugged in. Fixes piglit inverse tests. --- src/glsl/Makefile |2 +- src/glsl/builtins/glsl/inverse.glsl | 105 +