S3TC Support For Mesa Brought Up Again

Posted by Michael Larabel on March 28, 2010

Besides the Mesa 7.8 release announcement hitting the Mesa mailing list over the weekend, also catching our interest is a new discussion concerning S3TC texture compression in this open-source software stack. One of the developers working on Spring RTS, an open-source real-time strategy game engine for Linux and Windows, is wanting the open-source Mesa developers to implement S3TC texture compression/decompression. But this is a rather sticky situation.

The reason that full S3TC texture compression/decompression hasn't been properly implemented within any of the Mesa drivers is because of patent fears. S3 Graphics / VIA holds US Patent #5956431 that was filed back in 1999 and covers the S3 Texture Compression algorithms.

S3TC support is available for Mesa, but not fully or cleanly. Pre-compressed S3TC textures can be used by Mesa as the textures will just be passed directly to the graphics processor with all modern GPUs supporting this kind of hardware decompression. If real-time compression of S3TC textures is needed, there is no support by default as it's dependent upon an external library that cannot be legally redistributed or used within countries where the patented S3TC algorithms are upheld -- unless of course you have an S3 Texture Compression license. This support is provided by the txc_dxtn library and the source code can be found here. When Mesa's built and this external library is detected, supported DRI drivers can then take advantage and utilized uncompressed data.

The Spring RTS developer goes on with a long message about how Mesa 3D developers could potentially workaround the S3TC patent fears. The developer does not appear to have a legal background, but is basing his belief on transcripts from a patent defense talk. This though is unlikely to generate any development action until there's any official work done by the Linux Foundation, Software Freedom Law Center, Electronic Frontier Foundation, or other legal organizations that look to support free software.

There's also been some patent concerns regarding OpenGL 3.x support in Mesa, but we haven't heard anything on that matter since the Linux Foundation was going to be investigating that issue.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  2. Intel Linux OpenGL Driver Leading Over Apple OS X
  3. The Cost Of Ubuntu Disk Encryption
  4. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
Latest Linux News
  1. A New X.Org-Free Wayland LiveCD Released
  2. Unity 8, Mir Made Progress This Week On Features
  3. LLVM Clang 3.3 RC2 Is Ready For Testing
  4. AMD RadeonSI Gallium3D Begins Simple CL Demos
  5. Intel Shows Off GNOME3-Based Tizen Shell
  6. Linux Desktop Security Could Be A Whole Lot Better
  7. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  8. New NVIDIA Linux Driver Supports The GeForce GTX 780
  9. Chrome 28 To Offer More Speed Improvements
  10. Digia Announces "Boot To Qt" Project
  11. X.Org Libraries Hit By Round Of Security Issues
Latest Forum Talk
  1. Steam: No used games...
  2. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  3. AMD RadeonSI Gallium3D Begins Simple CL Demos
  4. KDE 4.11 Will Be The Last Major KDE4 Workspaces...
  5. Linux Desktop Security Could Be A Whole Lot Better
  6. X.Org Libraries Hit By Round Of Security Issues
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite