[Mesa-dev] gallium scaled types

Jose Fonseca jfonseca at vmware.com
Tue Sep 13 09:31:08 PDT 2011



----- Original Message -----
> Am 13.09.2011 00:33, schrieb Jose Fonseca:
> > I admit I'm not very familiar how hardware currently supports
> > native
> > double formats.  Or how likely it is for hardware to have native 4
> > x
> > double register support in the future.  But even if we ignore the 4
> > x
> > double case, there's still the 2 x double and 1 x double vertex
> > attributes, which can be converted to float or double depending on
> > the VertexAttrib call.
> 
> FWIW it's interesting to note that d3d11 does not seem to support any
> native double (or 64bit for that matter) formats. From the HSLS docs
> (http://msdn.microsoft.com/de-de/library/bb509646%28v=vs.85%29.aspx).
> "You cannot use double precision values as inputs and outputs for a
> stream. To pass double precision values between shaders, declare each
> double as a pair of uint data types. Then, use the asdouble function
> to
> pack each double into the pair of uints and the asuint function to
> unpack the pair of uints back into the double."
> That probably implies hw doesn't support it neither.

That's weird.

I've looked into GL 4.2's specs, it looks they support passing dvec attributes. They actually mention specifically that dvec3/dvec4 vertex attributes take two consecutive locations, so it looks like the concept that dvec4 alias 2x vec4 registers prevails everywhere.

There doesn't seem to be double/dvec texture sampling support in the language however.


Jose


More information about the mesa-dev mailing list