Super! Patented Mesa Floating-Point Is Merged!

Written by Michael Larabel in Mesa on 15 April 2011 at 08:29 AM EDT. 32 Comments
MESA
Here's quite a pleasant surprise to wake up to this morning: OpenGL floating-point textures and render-targets support has finally been merged to mainline Mesa master! The drawn-out process that began more than a month ago is finally over.

Pushed to Mesa master over the night was Marek Olšák's patches for float textures in supporting the ARB_texture_float extension and render-buffers, which is part of the OpenGL 3.0 specification. Marek's work is fully supported in the ATI R300 Gallium3D driver while other drivers can now easily hook into this newly-added support that up until now was living in a branched version of Mesa.

Though as previously discussed, while this code is now in the mainline Mesa code-base and will be part of the Mesa 7.11 release, it will not be enabled by default. Due to patent concerns, enabling this support must be done at compile-time by setting the --enable-texture-float flag. If it's not set, you'll still be left without the support. At least though it's easier building mainline Mesa rather than having to worry about separate branches, etc.

The patches dropping in this support can be found from the Mesa Git log. VMware's José Fonseca has also added a patents document to the Mesa tree that describes this situation.
ARB_texture_float:

Silicon Graphics, Inc. owns US Patent #6,650,327, issued November 18, 2003 [1].

SGI believes this patent contains necessary IP for graphics systems implementing floating point rasterization and floating point framebuffer capabilities described in ARB_texture_float extension, and will discuss licensing on RAND terms, on an individual basis with companies wishing to use this IP in the context of conformant OpenGL implementations [2].

The source code to implement ARB_texture_float extension is included and can be toggled on at compile time only by those who purchased a license from SGI, or are in a country where the patent does not apply.

The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software.

You should contact a lawyer or SGI's legal department if you want to enable this extension.

[1] http://www.google.com/patents/about?id=mIIOAAAAEBAJ&dq=6650327
[2] http://www.opengl.org/registry/specs/ARB/texture_float.txt

Don't expect to find this enabled-by-default soon in any mainstream Linux distributions over these patent concerns. The Linux Foundation was looking into 3D patent issues as it would be rather great if SGI would voluntarily provide a patent covenant to the open-source / Mesa community, but so far it doesn't appear their legal work has done any good. Back at the Linux Foundation Collaboration Summit earlier in the month I asked Keith Packard if he heard anything resulting from the Linux Foundation looking into the Mesa patent issues, but he hadn't heard of anything coming to fruition.

Meanwhile, the S3TC texture compression work hasn't been merged to mainline Mesa. While this too is in another patent mess, this at least can be provided to Mesa by an external shared library and doesn't need to be built into core Mesa itself for being a clean implementation.
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