有没有一种简单的方法可以在英特尔显卡上启用 S3TC?

Oli*_*Oli 18 graphics intel

S3TC 是一种用于压缩纹理的专利图形机制。它获得了如此广泛的专利,以至于发行版(包括 Ubuntu)并未随其免费驱动程序一起提供。闭源驱动程序启用了这一功能,因为公司(AMD/Nvidia)支付专利使用费并承担责任。

但我目前使用的是英特尔图形芯片组。具体来说,i915。驱动程序是完全免费和开源的。虽然我相信硬件可以处理 S3TC,但驱动程序是随 Ubuntu(或通过更新)提供的驱动程序,因此 S3TC 已关闭。

从我读到的(相当旧的帖子)打开 S3TC 需要获取 的源代码mesa,在 S3TC 中打补丁,重新配置它,然后重新编译它。简而言之,这听起来像一团糟。

  • 现在还是这样吗?
  • 有没有人很好并在打开 S3TC 的情况下创建了 PPA?

RAO*_*AOF 16

自 12.10 起,libtxc-dxtn-s2tc0默认安装,提供此功能。


Mesa 不需要重建来启用 S3TC 支持,而且已经有一段时间没有重建了。S3TC有两种选择

  1. force_s3tc_enable=true在环境中设置以宣传 S3TC 支持。在这种情况下,S3TC 纹理将传递到硬件。Mesa 将不支持使用 S3TC 压缩纹理,这是 GL 扩展规范所要求的,因此可能会出现问题。

  2. 使用外部libtxc-dxtn库进行 S3TC 压缩。如果存在,Mesa 将尝试加载它,并提供完整的 S3TC 支持。这至少在 xorg-edges 中可用。