符文工房吧 关注:21,663贴子:344,277

回复:【教程】XCI和NSP提取资源简单流程

只看楼主收藏回复

用模拟器帧数能不能到60帧


IP属地:广东来自Android客户端16楼2021-06-18 11:28
收起回复
    然后是符文4S人物立绘的提取,NS版和3DS版的一样,人物立绘在face文件夹中,只不过3DS使用的是CGFX格式的bctex,NS版使用的是astc格式的bntx。


    IP属地:云南17楼2021-06-18 20:01
    回复
      2026-01-18 18:08:08
      广告
      不感兴趣
      开通SVIP免广告
      提取bntx的话,我们首先要将bntx转换为astc格式,可以使用开源工具BnTxx来进行转换,这个工具是C#写的,作者没有发布编译好的程序的话,我们可以自己编译。



      IP属地:云南18楼2021-06-18 20:05
      回复
        编译好以后这个工具使用很简单,不需要打开命令提示符输入命令来进行操作,只要把文件拖到程序上就可以转换。




        IP属地:云南19楼2021-06-18 20:07
        回复
          将bntx转换成astc以后,我们还要再把它转换为常用的图像格式。
          ASTC则是OpenGL和OpenGL ES图形API的官方扩展,从OpenGL ES 3.0出现后产生的一种纹理压缩格式,它有多种可选的压缩比例,可以支持4x4到12x12的压缩分块,硬件上可以减少应用程序所需的内存,并减少GPU所需的内存带宽。


          IP属地:云南20楼2021-06-18 20:17
          收起回复
            把astc转换为常见的图像格式我们可以使用开源工具astc-encoder来进行转换,这个工具是C++写的,我接触C++比较少,没有能力自己编译的话可以下载编译好的版本。



            IP属地:云南21楼2021-06-18 20:22
            回复
              astc-encoder发布的编译好的程序有三个版本,是分别对应AVX2,SSE2和SSE4.1指令集优化的版本。
              其中AVX2版效率最高,SSE4.1次之,SSE2最慢,大家可以根据自己电脑的硬件情况来进行选择。
              AVX2指令集优化的版本需要Intel Haswell架构以上的CPU才能运行,AMD则要Zen架构以上才能支持。
              Intel四代以上的CPU可以选使用AVX2版来进行转换,AMD虽然Zen和Zen+架构也能支持AVX2指令集,但它们的浮点单元的宽度本质上还是只有128bit,那样的话256bit的AVX2指令就只能通过128bit的运算器来运算,效率就会不高,因此AVX2版还是推荐Zen2以上的CPU使用。
              老平台的话选择SSE4.1或者SSE2版即可。


              IP属地:云南22楼2021-06-18 20:39
              回复
                这个工具转换图片的话,就需要打开命令提示符或者写批处理来实现了。
                首先将处理好的astc图片和工具放在同一目录下,接着还是打开命令提示符,路径转到工具所在的目录下。




                IP属地:云南23楼2021-06-18 20:47
                回复
                  2026-01-18 18:02:08
                  广告
                  不感兴趣
                  开通SVIP免广告
                  命令提示符的路径转到工具所在的目录下以后,我们就可以输入对与的命令来进行转换了。
                  使用方法是程序名 -dh 需要转换的astc文件名 输出的图片文件名
                  我这边输入astcenc-avx2.exe -dh 00_PLAYER_M_body_00.astc 00_PLAYER_M_body_00.png
                  其中astcenc-avx2.exe是程序名,我使用的是AVX2指令集优化的版本。
                  -dh是转换命令。
                  00_PLAYER_M_body_00.astc是需要转换的atsc文件名。
                  00_PLAYER_M_body_00.png是转换后图片的文件名。
                  输入命令转换完成后目录下就会出现png图片,这个就是我们转换成功后的图片。





                  IP属地:云南24楼2021-06-18 20:54
                  回复
                    使用BnTxx和astcenc来转换astc虽然看上去需要在命令提示符中输入各种转换命令看上去很复杂,但实际上掌握了使用方法以后,写程序或者批处理来调用也挺容易使用。
                    不过这两个工具不适合对控制台程序不熟悉的用户,那样的话也可以使用另外一个开源工具Switch-Toolbox来进行查看和转换。



                    IP属地:云南25楼2021-06-18 21:22
                    回复
                      Switch-Toolbox支持的格式除了有bntx以外,还有其他很多格式,大家可以自行尝试。
                      同样这个工具也是支持批量转换图片的,只要在工具栏的Tools中找到批量导出纹理图片的选项,再选择需要转换的文件和输出文件夹,就可以批量导出。








                      IP属地:云南26楼2021-06-18 21:33
                      回复
                        符文4提取其他bntx图片也一样,控制台程序使用BnTxx和astcenc就可以转换,窗体程序使用Switch-Toolbox也可以查看图片和批量转换。



                        IP属地:云南27楼2021-06-19 11:40
                        回复
                          符文4采用的bfres模型也可以使用Switch-Toolbox打开,可以查看里面的模型和贴图。





                          IP属地:云南28楼2021-06-19 11:45
                          回复
                            符文4S提取文本的话,方法应该还是老样子,文本是UTF-8编码的话,将UTF8转ANSI就能提取出文本,不过这个方案只适合简单的查看。




                            IP属地:云南29楼2021-06-19 12:02
                            回复
                              2026-01-18 17:56:08
                              广告
                              不感兴趣
                              开通SVIP免广告
                              符文4S动画的话则是常见的MP4格式,不像3DS版是采用Mobiclip编码的moflex格式,那个的提取就比较麻烦,而NS版采用常见的MP4格式使用一般的视频播放器就可以直接播放。



                              IP属地:云南30楼2021-06-19 12:18
                              回复