gstreamer/ext
Matthew Waters e4bf9ed8f0 gl/utils: Fix NDC conversion matrices for column-majorness
The matrices were converting the wrong values with non-diagonal-only matrices.
e.g. a typical yflip matrix in [-1,1]^3 such as
 1  0  0  0
 0 -1  0  0
 0  0  1  0
 0  0  0  1

Would have actually required a matrix like this in [0,1]^3
 1  0  0  0
 0 -1  0  0
 0  0  1  0
 0 -2  0  1

Which is
1. not consistent with our multiplication convention and would require
   transposing matrices or changing our multiplication order (from what is
   generally used on opengl matrix guides/tutorials).
2. Produces incorrect values when input with actual vertices accounting for
   the difference in multiplication order.  e.g. some vertices multiplied by
   the yflip matrix using vertex * yflip(== transpose(yflip) * vertex):

     vertex:       -> result:           expected:
     vec4(1,0,1,1) -> vec4(1,-2,1,1)    vec4(1,1,1,1)
     vec4(1,1,1,1) -> vec4(1,-3,1,1)    vec4(1,0,1,1)

With the updated values, we now get the expected values.

Includes a test for this behaviour and the example above
2018-06-06 23:36:08 +10:00
..
alsa Meson: Generate pc file for all plugins in base 2018-04-25 11:05:56 +01:00
cdparanoia Meson: Generate pc file for all plugins in base 2018-04-25 11:05:56 +01:00
gl gl/utils: Fix NDC conversion matrices for column-majorness 2018-06-06 23:36:08 +10:00
libvisual Meson: Generate pc file for all plugins in base 2018-04-25 11:05:56 +01:00
ogg oggdemux: Properly relay seqnum of segments 2018-06-05 17:24:05 +02:00
opus Meson: Generate pc file for all plugins in base 2018-04-25 11:05:56 +01:00
pango Meson: Generate pc file for all plugins in base 2018-04-25 11:05:56 +01:00
theora Meson: Generate pc file for all plugins in base 2018-04-25 11:05:56 +01:00
vorbis Meson: Generate pc file for all plugins in base 2018-04-25 11:05:56 +01:00
Makefile.am gl: hook up to build system 2017-12-19 12:01:48 +00:00
meson.build gl: hook up to build system 2017-12-19 12:01:48 +00:00