S3TC Support For Mesa Brought Up Again
Phoronix: S3TC Support For Mesa Brought Up Again
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...
There was a interesting talk on how to work around software patents for the open source community.
* Prior Art is really reallly really f-ing hard. Much harder then most people imagine. It's so hard that it's not even worth trying.
* Invalidating patents in some other way.. see above.
So... since it's going to cost millions of dollars and it almost won't work anyways to try to invalidate a patent then what you can do is find a work around.
In the patent you must ignore the 'abstract'. The important part you must work with first is the 'independent claims'.
The 'independent claims' make up the meat of the patent. If you can find a work around for just ONE of the independent claims then that means that you do not violate the patent. You just need to get the patent language and terms as specific as possible then do it different. By doing this you are not invalidating a patent, your just making it null and void as far as your concerned.
If the OSS community was to find one work around for a patent claim then publish it it would effectively destroy the commercial viability for a patent. If the OSS community does this enough then it will actually scare the patent trolls away since they do not want the work-arounds publically known.
See details, videos of the talk, and transcription here:
That is by one of the major project members of the SAMBA project. He has fought Microsoft on patents and won, so he knows what he is talking about.
Legal risk doesn't vanish just because an action is legal. Just the superficial appearance of a law being broken can cause problems. In principle I agree with using the workaround method, but in this case I think it's likely to be tantamount to picking a fight, and should be done only if someone on our side is prepared to take up that fight.
Wouldn't the concept of patent exhaustion mean that the license paid for S3TC by video card makers covers any system that includes such a video card?
I'm not sure if it covers third-party drivers.
Originally Posted by unix_epoch
"legal risk" never vanishes, they can sue you for anything these days. in Russia there is even a saying "never forswear from poverty and prison".
but this is not a good reason to ignore essential stuff because of some patent assholes.
I remember S3TC support was there for the original Unreal Tournament. It was quite good.
I don't understand why it is kept hostage by patents though. Not a single game after UT used it as far as I can tell. Which makes sense because after UT the GPU's where good enough to do it without those textures. As long as it won't be unchained, I can't see why anyone would like to use that.
I think S3/VIA need to acknowledge that there isn't a market for it any more.
Err.. actually basically every commercial title uses compressed textures. They either ship with precompressed textures or let the video driver compress them on load. The latter is something Mesa cannot currently do.
Originally Posted by MaestroMaus
Alright, seems I was mistaken. I only connected it to Unreal Tournament since it had the explicit option of using S3TC textures if you had a Savage GPU (which could be bypassed). I never saw that option in other games but I guess they must have shortened it to "use compressed textures"...
Actually a lot of games use it. Heroes of Newerth does, and for a while it couldn't be played on Mesa. They've since made s3tc optional. And Left 4 Dead uses it. When I tried starting it in wine with the r600 driver, it complained about not having support for compressed textures. After I "enabled" s3tc in driconf, it stopped complaining but I only got one step further and enduped up with a black screen.
Originally Posted by MaestroMaus