在DDS文件中,我们可以检测具有0/1 alpha位的纹理吗?
时间:2020-03-05 18:41:25 来源:igfitidea点击:
在我的引擎中,我需要能够检测具有texel为0 alpha的DXT1纹理(例如,窗框的切口)。对于我自己压缩的纹理,这很容易,但是我不确定已经压缩的纹理。
有没有一种简单的方法可以从标题中分辨出DDS图像是否包含Alpha?
解决方案
回答
据我所知,无法从标题中分辨出来。有一个DDPF_ALPHAPIXELS标志,但我认为不会根据像素数据中的内容进行设置。我们需要解析DXT1块,并在其中查找具有0 alpha的颜色(我想确保确保也确实在该块中使用了该颜色)。
回答
我同意接受的答案。通过使用" squish"库为我们解压缩块,可以使工作变得容易一些。
http://www.sjbrown.co.uk/?code=squish