我想翻译一个gamecube电子游戏(称为Winning Eleven),但我没有从包含纹理的文件中提取纹理。

我尝试了几种工具,其中一种是用于特定gamecube游戏(Mario Sunshine iirc)的工具,但未能成功,很可能是因为它使用了不同的独特解压缩方法。

包含纹理的文件为.bin文件。 ,我借助zlib工具从所谓的.txs文件中提取了该文件。

如果对此有渊博的知识的人可以看一下此文件,我将不胜感激。 br />
有人可能会认出它,或者甚至已经知道如何解决这个问题。

我上传了4个从txs文件中提取的bin文件,我还添加了一个称为AFS Explorer的工具。

下载链接:
http://s000.tinyupload.com/download.php?file_id=301252178583570160160&t=3012521785835701609927187

要提取双我使用了AFS Explorer的内置Zlib Manager中的n个文件。

如何打开和浏览txs文件:


打开AFS Explorer
转到顶部栏上的“查看”,然后选择“ Zlib管理器”
选择“从文件加载部分”并打开txs文件。

我只是提到此内容,以了解如何首先提取bin文件是为了更好地理解。

如果您能帮助我解决这个问题,我将不胜感激。

编辑:
那些绝对不是动画,只是带有文本作为内容的普通位图。我什至可以向您展示它们的外观,它们来自同一游戏的PS2版本,形成了完全相同的文件,名为“ form.txs”,唯一的区别显然是PS2版本使用了不同的压缩方法发现。


http://i.imgur.com/WJu1tK0.png
http://i.imgur.com/OdeISRq.png
http:// i.imgur.com/VZLIAWs.png
http://i.imgur.com/RCS3h8H.png

有多种工具可用于PS2文件,但不能与NGC文件一起使用,显然是由于格式差异。

编辑2:

我已经上传了可以与PS2 bin文件一起使用的纹理工具,但显然不适用于GameCube文件。尽管进行了大量搜索(也在旧的存档网站上),但我找不到此纹理工具的源代码。但是我认为我仍然应该上传它,这可能也会有所帮助。
我希望tinyupload.com可以进行上传。

下载链接:
http://s000.tinyupload .com / index.php?file_id = 92363414871112387548

#1 楼

看起来很有趣。

当我在十六进制编辑器中打开文件的第一和第二个文件时,一个文件有20240字节,另一个文件有10240字节(所有数字均为十六进制)。因此,在一种情况下为2 ^ 16 + 220,在另一种情况下为2 ^ 17 + 220。

两个文件的前240个字节中的数据都“看起来有些特定”,然后数据开始看起来不同。示例:



对我来说,它的味道是:

0040-0240调色板;
静止图像数据

请注意,当您设置十六进制显示的宽度时,图案看起来有多规则。这似乎是20x20(十进制32x32)像素的位图。但是,在文件中往下看,似乎还有其他宽度。

所以,这不是(我)无法识别的格式,但解码起来应该不会太难

其他2个文件似乎具有不同的格式,它们仅比2的幂大30个字节,并且没有明显的模式将30个字节更改为文件。尚不确定该怎么做。

编辑:

将AFS73DB.tmp_0.bin文件的图像数据解释为32x128瓦片并将其彼此相邻放置产量(省略了某些部分):



在我看来,这就像是动画,可能是爆炸或类似的东西。颜色可能偏远了。这会响铃吗?您是否有一两个屏幕快照,它在Gamecube上的外观如何?

而且,似乎纹理的下部未使用,因此填充了随机字节。

如果您想查看我对解码器的尝试,请查看https://github.com/gbl/GamecubeTextureDisplay。

Edit2:

举一个例子输出看起来应该很有帮助,而且我能够更新我的解码器。

每32个输入字节的块作为8x4像素块存储在输出中,下一个块在其右侧,直到达到整行长度为止,如下所示:

00 01 02 03 04 05 06 07     20 21 22 23 24 25 26 27   ....
08 09 0a 0b 0c 0d 0e 0f     28 29 2a 2b 2c 2d 2e 2f 
10 11 12 13 14 15 16 17     .....
18 19 1a 1b 1c 1d 1e 1f


每个调色板条目似乎都是一个2字节的大尾数字,其msb未知(alpha值?),后跟5位表示红色,绿色和蓝色。因此,例如,调色板项8CE2转换为1000 1100 1110 0010,拆分为1|00011|00111|00010|,结果(当各个颜色填充为8位时)在r=00011000=24g=00111000=56b=00010000=16中产生。

使用此操作,您的文件导致br />



看起来不错。但是,第一个图像中有一些不应该出现的红色像素,第二个图像中的字母看上去几乎像是3D字母,其绿色/红色像素发生了偏移。这可能与alpha值有关吗?

仍不确定黑白图片的构成。

(待续)

评论


如果您有更多信息要共享,只需编辑问题。图像文件很有趣:颜色文件具有1字节/像素+ 512字节(调色板?)+ 64字节标题。黑白文件具有1个半字节/像素+ 32个字节(灰度调色板?)+ 64个字节的标头。因此,它们绝对不会被压缩。尽管我还无法理解这种格式,但这样的信息会极大地帮助您。

–贡特拉姆·布洛姆(Guntram Blohm)
16年5月14日在16:58