解压缩 PVRTC 压缩图像格式?
Decompressing a PVRTC compressed image format?
我正在尝试打开我认为使用 PVRTC 格式的 iPhone 游戏中的一些纹理(如下图所示)
PVRTC image format?
但是我尝试打开它的所有方法都失败了。 PVRTexTool 不会解压缩它,该程序只能打开扩展名为 .PVR 的文件并且无法识别它。我也尝试过使用 TexturePacker,但它也无法识别它。困扰我好几天了,如能帮忙解压文件,将不胜感激。
我只能提供一些建议
iOS 将 PVRTC 纹理限制为正方形和 2 大小的幂,并且它们将是 2bpp 或更有可能是 4bpp。因此,如果我们最初假设没有 MIP 映射,那么原始数据可能只有几种可能的大小。从中您可能能够推断出任何 header 数据的大小并将其删除。如果您有原始数据,我认为 Imagination Tech 的 PowerVR SDK 提供了 C 语言的解码器源代码(或者至少我上次检查时确实是几年前)。此外,数据可能按莫顿顺序排列。
如果使用 MIP 映射 ,那么我认为您需要将整个 MIP 映射链包括在您的大小计算中,但请注意小映射将被四舍五入每个至少 8 个字节。
我正在尝试打开我认为使用 PVRTC 格式的 iPhone 游戏中的一些纹理(如下图所示)
PVRTC image format?
但是我尝试打开它的所有方法都失败了。 PVRTexTool 不会解压缩它,该程序只能打开扩展名为 .PVR 的文件并且无法识别它。我也尝试过使用 TexturePacker,但它也无法识别它。困扰我好几天了,如能帮忙解压文件,将不胜感激。
我只能提供一些建议
iOS 将 PVRTC 纹理限制为正方形和 2 大小的幂,并且它们将是 2bpp 或更有可能是 4bpp。因此,如果我们最初假设没有 MIP 映射,那么原始数据可能只有几种可能的大小。从中您可能能够推断出任何 header 数据的大小并将其删除。如果您有原始数据,我认为 Imagination Tech 的 PowerVR SDK 提供了 C 语言的解码器源代码(或者至少我上次检查时确实是几年前)。此外,数据可能按莫顿顺序排列。
如果使用 MIP 映射 ,那么我认为您需要将整个 MIP 映射链包括在您的大小计算中,但请注意小映射将被四舍五入每个至少 8 个字节。