Re: [Mesa-dev] SNORM conversion equation woes

2013-08-01 Thread Ian Romanick
On 07/26/2013 02:20 PM, Kenneth Graunke wrote: Hello all, I've been looking at https://bugs.freedesktop.org/show_bug.cgi?id=59150 and could use your opinion. OpenGL defines two equations for converting from SNORM to floating point data. These are: f = (2c + 1)/(2^b - 1)(equati

Re: [Mesa-dev] SNORM conversion equation woes

2013-07-27 Thread Roland Scheidegger
That formula 2.2 existed for quite some time and was only used for vertex specification. And then came along textures using that format, and in good OpenGL tradition the old formula was kept for vertex data (I guess the new formula was used for textures because that was what hardware and other spec

Re: [Mesa-dev] SNORM conversion equation woes

2013-07-27 Thread Jose Fonseca
D3D10 specifies equation 2.3 (and I'm sure so that D3D9). So probably all hardware can handle it. I'm surprised that formula 2.2 even exists, and that OpenGL could have been so lax about it. Jose - Original Message - > Hello all, > > I've been looking at https://bugs.freedesktop.org/s

Re: [Mesa-dev] SNORM conversion equation woes

2013-07-26 Thread Marek Olšák
On R600 (GL3-class), we can choose which equation will be used, because it's a state that is part of the resource descriptor. Not sure about later chipsets, but the vertex fetching must be done in a shader anyway, therefore we can quite easily implement any format conversion. As far as OpenGL is c

Re: [Mesa-dev] SNORM conversion equation woes

2013-07-26 Thread Chris Forbes
What are other implementations doing? IIRC, GL3-class NV hardware passes the current piglit tests. On Sat, Jul 27, 2013 at 9:20 AM, Kenneth Graunke wrote: > Hello all, > > I've been looking at https://bugs.freedesktop.org/show_bug.cgi?id=59150 and > could use your opinion. > > OpenGL defines two

[Mesa-dev] SNORM conversion equation woes

2013-07-26 Thread Kenneth Graunke
Hello all, I've been looking at https://bugs.freedesktop.org/show_bug.cgi?id=59150 and could use your opinion. OpenGL defines two equations for converting from SNORM to floating point data. These are: f = (2c + 1)/(2^b - 1)(equation 2.2) f = max{c/2^(b-1) - 1), -1.0}