总的笔记:https://www.cnblogs.com/guobaoxu/p/12055930.html
用处:
TextAsset的最常见用途之一是多语言,所以汉化过程中有时候会改到这个东西
图片就不用说了,不是所有的文字都是用Text显示的,汉化过程中多少会有图片出现
工具:
AssetStudio(地址:https://www.perfare.net/tag/assetstudio)
UABE(地址:https://7daystodie.com/forums/showthread.php?22675-Unity-Assets-Bundle-Extractor)
一、TextAsset
Demo:用Unity做的简单例子,读取文本中的文字并直接显示
修改过程:
先用Asset Studio加载assets/bin/Data文件夹,菜单栏Filter Type-TextAsset,在右侧预览中可以看到内容,从而确定我们要改的TextAsset是哪一个
右键Show original File,得知在文件resources.asset中,用UABE打开这个文件,定位到该TextAsset,通过名字、类型、大小,很容易定位到的
在UABE右侧点击Plugins,弹出的窗口里两个选项,导入和导出,选择Export to .txt,导出为txt文件,用带有【UTF-8编码】的编辑器(我用的010 Editor)打开,然后修改,保存,效果如下:
回到UABE,再次点击Plugins,选择Import from .txt,选择修改后的txt文件,点击OK,保存。注意UABE只能另存为,无法直接写回源文件,所以要保存到另一个位置,然后手动复制替换。
再次运行,效果如下:
二、图片替换
Demo:用Unity做的简单例子,就UI/Image上一张图片直接显示,没有什么骚操作,效果如下
修改过程:
用AssetStudio加载assets/bin/Data文件夹,菜单栏Filter Type-Texture2D,在右侧预览中可以看到内容,从而确定我们要改的图片是哪一个
右键Show original File,得知源文件为sharedassets0.asset,用UABE打开它,定位到该文件,同样主要靠名字、类型可以找到,大小的话两边稍稍有点不一样,但是名字加类型够了
在UABE右侧,点击Plugins,如果担心定位错了,可以选择Export to png,检查一下。修改的话选择Edit,再选择Load,导入准备好的新图片,关于图片,最好是尺寸一致的。
如果你仔细看,会发现还有一个同名的Sprite资源,他会引用Texture2D的一部分,UI/Image直接使用的是Sprite,而不是Texture2D,也就是说,他们的职责分配是,Texture2D是源图,Sprite选择图片的区域,Image是显示。有缘查一查正向开发中Sprite的应用,可以得到更多信息。
Edit完,点击OK保存,覆盖源文件,重新启动。这里我用了一个尺寸大得多的图,它的效果如下:
可以看到只有一部分被显示了,如果不嫌麻烦,可以再去改一改Sprite里的参数,同样用UABE,但是最方便还是保持尺寸相同。