Intel Mesa To Force On S3TC, Floating-Point Textures

Written by Michael Larabel in Intel on 19 October 2012 at 01:27 AM EDT. 20 Comments
INTEL
Two patches from Intel's Ian Romanick for their open-source Mesa DRI driver will now enable S3TC extensions always plus floating-point textures. These two features previously were not enabled by default out of patent fears.

The enabling of S3 Texture Compression extensions always ensures the extensions are exposed whether or not the libtxc_dxtn library is present -- this library is still needed for performing online S3TC compression, but sending of pre-compressed texture data remains fine. The open-source S3TC library isn't being merged to Mesa (unfortunately) nor does it appear the legal status concerning the notorious S3 Texture Compression patent has changed, but Intel is simply always advertising that it's there.
Always enable the use of pre- compressed texture data, and always advertise the ability to do on-line compression. The ability to perform on-line compression still requires the presence of libtxc_dxtn, so sometimes the driver incorrectly over-advertises functionality. This should not impact many (if any) real applications.
The other change is that floating-point textures is now enabled. Floating-point textures were another feature that open-source developers have been careful around due to patent fears. Unlike S3TC where the patent-offending code is in a separate open-source library, with floating-point textures the support had to be integrated into mainline Mesa but hidden behind a non-default --enable-texture-float switch because it otherwise wouldn't fit well into Mesa's architecture. That code has been in Mesa for many months now, but Intel's deciding to now do away with the check and always have the support enabled for their DRI driver. Last year it was thought the S3TC patent was invalid or at least some of its key points, but nothing ended up clearing Intel's legal department nor any other details revealed.

Ian didn't write any commit message for his "Enable floating-point textures always" patch, but it does indeed do away with the checks so that texture-float is always enabled. This means that OpenGL 3.0+ is now advertised by default since previously unless the texture-float switch was set, only GLSL 1.20 / OpenGL 2.1 support was advertised. Floating-point textures are needed for OpenGL 3.0.

I haven't heard of any floating-point texture patents being ruled out or if Intel struck up a legal deal with anyone, but it's nice to see floating-point textures by default and also that the S3TC texture compression extensions are now always shown. The patches can be found here and here.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week