On 08/13/2013 11:53 AM, Uwe Schmidt wrote:
Hi,
I have read about the issue of implementing the S3TC Extension in Mesa:
http://dri.freedesktop.org/wiki/S3TC/
As I understood, the problem is, that encoding and decoding S3TC in
software is covered by patents, while passing S3TC compressed data to the
GPU is still ok.
It's all patented. Some hardware vendors have licenses for things their
hardware does. There's a thing called contributory infringement, too.
Please don't play arm-chair IP attorney.
AS NOW:
If "force_s3tc_enable" is enabled in Mesa3D, uploading a S3TC encoded
texture works if format==internalFormat is true. If format!=internalFormat
is true, it would fail (as i know).
It doesn't fail. Mesa just leaves the data uncompressed. The only
failure occurs if the application calls glGetComrpessedTexImage to get
the compressed data back.
SO MY PROPOSAL:
If 'format' is one of the S3TC types, and format!=internalFormat is true,
then set internalFormat:=format.
'format' cannot be a compressed type. Compressed data can only be
supplied using glCompressedTexImage2D, and that function only has an
internalFormat parameter.
Else, if 'internalFormat' is one of the S3TC types, but the 'format' isn't,
set internalFormat:=format (or any other format, Mesa3D can encode).
The only format that Mesa can encode is FXT1. Only Intel hardware
supports FXT1, and the quality (of Mesa's compressor) is not very good.
Picking that format would result in bug reports of "game XYZ looks
horrible on Intel graphix you suck." So that leaves us with the only
option of leaving the data uncompressed.
Until S3 grants it's IP to OIN or the patents expire, this is going to
be the situation. We've been through this mental exercise of the last 5
years more times than I can count, and we always come back to the same
place.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev