通用游戏去除马赛克心得
游戏可以去除马的前提是这个马赛克是要后期添加的,而不是游戏资源或者是游戏原始素材就有的马赛克,拿什么比喻呢,就类似勇战这种游戏的cg是引擎直接渲染图片的,马赛克是焊死的没有办法。但是其他的例如Live2D则是实时渲染的动态模型,有的他游戏的马赛克是通过shader对纹理坐标进行量化处理,可以理解为添加了一层透明但是模糊的图片。那么控制引擎渲染就可以实现去除马赛克的效果。好了,废话不多说,了解这些东西也没什么用。直入主题,


这种就是图片就有马的 这种是素材没有马的但是游戏里面有
unity游戏部分
现在unity游戏的去除马赛克其实很简单,功亏与unity的生态丰富,有好多现成的开源项目可以实现这种效果,例如bepinex加载去马插件,非常简单粗暴。但是但你不知道游原素材有没有马赛克的时候你一用unity解包工具例如AssetStudio这一类工具查看素材
知道了可以之后去下载bepinex,选择合适的版本(最好最新版),至于区分il2cpp和mono很简单自行去网上查找,懒得截图。然后将下载好的bepinex解压到游戏目录,这时候只需要去网上找去马赛克的库,然后下载。放入BepInExplugins里面。就可以去扣扣导导了。大致效果很明显,就像这样。

也会有例外,很久以前遇到一个游戏他的马赛克通过上面的方式去不了。也有办法,但是对计算机基础有点要求,具体思路就是通过AssetStudio导出马赛克资产,然后通过UABEAvalonia将马赛克格子修改为最小(小提示,这个时候直接删除着色器会渲染失败然后一片紫色)具体内容我就不实践一次了,最近也没有遇到这类比较难解马的游戏。可以看看教程《unity最基础常用去码方法的较详细图文教程 – 哔哩哔哩》(当时我弄的是一款猎奇的游戏,那个屎真的好像就是屎。现在打开这个工具有点犯恶心。)
虚幻部分
虚幻实现的过程也差不多,但是比较难而且还不完美,现在连解包虚幻都很复杂。而且只能修改dx11的游戏,如果默认是dx12的需要在游戏启动的时候添加”-dx11″才可以破解,这样的结果就是没有那么高清了。具体流程是通过3Dmigoto控制着色器渲染,然后进游戏之后找到马赛克的渲染图层,导入3Dmigoto成功打开游戏之后会有一行绿色的小子。切换到有马赛克的游戏场景,按小键盘的按键“1”和”2″、“4”和”5″、“7”和”8″、“/”和”*”直到马赛克消失。通过”/”和”*”使得马赛克消失,按”-“复制hash值、通过”7″和”8″使得马赛克消失,按”9″复制然后其他同理。3Dmigoto文件会附带一个d3dx.ini的配置文件,这个时候需要打开文件找到并添加字段,
[ShaderOverride_Mosaic1]
hash = 找到的hash值
handling = skip
我记得好像”/”和”*”复制到字段不一样。不过我忘了,现在ai这么发达如果你真的遇到问题的问一下ai。
至于虚幻的我就不在弄一次了,时间不够了。哎,要是活在黄油的世界里该有多好。不说了,要去当苦力了,祝愿黄油越来越好玩。
其实游戏去马赛克很简单,然而论坛里发布的资源大部分是原版的。(不过如果有莫名其妙的东西也不好,就像上次火绒发现的那个一样😅)
如果有机会我出个详细一点的图文教程,这次我也不知道我要干什么。
BepInBuilds – BepInEx Bleeding
高性能去马赛克 BepInEx 插件(Mono/IL2CPP)
3Dmigoto: DX11 modding wrapper to enable fixing broken stereoscopic effects. Warning: 3Dmigoto *ps我电脑上面的工具好像不是这个项目的,这个项目的有点老了,但是我现在也找不到我使用的网址了
