zoukankan      html  css  js  c++  java
  • Photoshop DDS转化插件的一些问题

    最近被老外提NORMAL效果不够好,建议我们使用DXT5来压缩NORMAL,而不是DXT1,我很纳闷,如果不是用DXT5NM,DXT1和DXT5效果应该是一样的才对,难道他指BC5,但BC5支持也还不广泛。后来还特地将原始TGA NORMAL分别压成DXT1和DXT5对比了下,确实DXT5比DXT1好很多,真奇怪,都用的RGB来存储XYZ,怎么会有差别了,当时也没多想,后来有空我测试了下,发现PS插件原来是这样压缩DXT1和DXT5的,如果原始图含RGBA 4个通道,你选择DXT1 WITH 1BIT ALPHA将它当作带ALPHA压缩,这样4色中有1色会被设置成完全无用的黑色,所以如果使用PS DXT PLUGIN存储DXT1时,如果没有ALPHA需求,一定将ALPHA通道给删了。后来只存储RGB 3通道的原图,则DXT1和DXT5效果完全一样。如果追求比较好的效果只能使用DXT5NM,就是将X分量存于DXT5独立压缩的A通道上,而将Y分量存储在有6bit精度的G通道上,同时将RB设置为相同值避免co-compression artifacts,如果是DX10可以考虑使用高精度,且体积小的BC5压缩方式,就是ATI的3Dc,另外还有个trick,我们即可用DXT1存也可以用DXT5存,可以保证shader代码不用变。如果存DXT1可以将X存入R通道,而Y存入G通道,不要ALPHA;如果存成DXT5格式,则将X存入ALPHA,Y存进G通道,且将R通道设置为1,这样shader中的解压代码都是:

    normal.x = R * Alpha;

    normal.y = G;

    normal.z = sqrt(1 - x^2 - y ^2);

  • 相关阅读:
    虚拟机中安装CentOS7
    tensorflowwindows安装
    CentOS7离线安装Ambari与HDP
    (二)apache atlas配置和运行
    kafka资料收集
    kafka源代码环境配置
    文件传输遇到的坑
    故障保护设置
    多轴APM调参
    程序员考试操作步骤
  • 原文地址:https://www.cnblogs.com/effulgent/p/2421662.html
Copyright © 2011-2022 走看看