RePKG 实战教程:提取 Wallpaper Engine 的 PKG 包并把 TEX 转成 PNG
【免费下载链接】repkgWallpaper engine PKG extractor/TEX to image converter项目地址: https://gitcode.com/gh_mirrors/re/repkg
Wallpaper Engine 的创意工坊壁纸落到本地后,其实只是一个 .pkg 压缩包,里面的图又是自研的 .tex 纹理格式——前者右键打不开,后者任何看图软件都不认识。RePKG 是一个用 C# 写的开源命令行工具,专门做两件事:提取 PKG 包内的全部资源,并把 TEX 纹理转成 PNG 等通用图片。下面把我从零上手到批量导出的完整过程走一遍。
一个拆包加转图的命令行小工具
把 .pkg 想成一个封好箱的快递:RePKG 就是那位拆快递的地勤,先按装箱清单把每件物品原样取出,再顺手把里面的真空压缩袋(TEX 压缩纹理)拆开,变成直接能看的照片(PNG)。它值得留意的三个点:
- TEX 直接转 PNG:DXT1/DXT3/DXT5 这类压缩纹理被完整解码输出,每张图旁还会附一份 .tex-json 记录纹理参数,不用自己写转换脚本
- 拆完能原路导回:extract 的 -c 参数会把包同级的 project.json 和预览图一起复制出来,整个目录可直接作为壁纸项目重新导入
- 纯命令行、无界面依赖:所有功能走终端,天然适合写进脚本做批量处理
安装:拉取源码并编译
前置只有一个:装好 .NET SDK。然后三条命令:
git clone https://gitcode.com/gh_mirrors/re/repkg cd repkg dotnet build主程序目标框架是 .NET Framework 4.7.2,在 Windows 上编译最稳妥。编译成功后可执行文件在RePKG/bin/Debug/net472/下,把该目录加入 PATH,之后任意位置都能直接敲repkg。依赖会自动还原,整个过程大约两三分钟。✨
一条命令拆开一个 PKG
先定位目标文件:创意工坊订阅的壁纸默认在 Steam 安装目录的steamapps\workshop\content\431960下,每个数字子文件夹对应一个壁纸项目,里面的scene.pkg就是主包。最小命令如下:
repkg extract "D:\Steam\steamapps\workshop\content\431960\22222222\scene.pkg"它做的事:解析 PKG 结构 → 解出全部条目 → 把每个 .tex 转成同名 PNG,默认全部放进当前目录的output文件夹。跑完会看到类似这样的日志:
### Extracting package: D:\...\scene.pkg * Extracting: materials\background.tex * Reading: materials\background.tex * Extracting: shader\wall.mat Done核心提取工作就这一行命令。打开 output 目录,PNG 可直接预览、直接使用。
动手之前,先用 info 看清单
批量操作前,我建议先花十秒看清包内有什么,避免解出一堆用不上的文件:
repkg info -e -s -b size "D:\Steam\...\scene.pkg"-e打印条目列表,-s排序,-b size按文件大小排(也支持 name、extension)。输出会列出每个文件的路径和字节数:
### Package info: scene.pkg Package entries: * materials\background.tex - 1887432 bytes * shader\wall.mat - 4210 bytes想查壁纸标题、版本这些元信息,加-p指定 project.json 里的字段名即可:
repkg info -p title,version -e "D:\Steam\...\scene.pkg"先看清单再决定提取策略,能省掉不少返工。🔍
批量导出一整个创意工坊目录
这是我认为最值钱的用法:把整个订阅目录变成可检索的素材库:
repkg extract -c -r -n -o "E:\MyWallpapers" "D:\Steam\steamapps\workshop\content\431960"参数拆开看:-r递归所有子文件夹查找 PKG;-c顺带复制 project.json 和预览图;-n用 project.json 里的标题(而非数字 ID)给每个项目建文件夹;-o指定输出根目录。跑完后,E:\MyWallpapers下就是一个按壁纸名分类、图片可直接预览的素材库。
两个变体按需取用:只想要图片素材时,加-e tex -s只提取纹理并平铺到单一目录,免去层层嵌套;处理超大包内存吃紧时,先加--no-tex-convert只拆不转,之后对提取出的目录单独跑repkg extract -t -s "E:\MyWallpapers\某个项目"补转换。🚀
排错:三个高频问题
- Unknown magic 报错:说明文件不是有效的 PKG/TEX 或下载不完整,换个来源文件重试
- 重复运行总被跳过:RePKG 默认不覆盖已有文件,日志里会打 "Skipping, already exists",确认想重来就加
--overwrite - 大文件转图慢:压缩纹理是在内存里解码的,超大包建议先
--no-tex-convert拆包,再分批转换
另外输入路径写错时会直接提示Input file not found,检查一下引号和盘符写法就好。✅
行动清单
- 挑一个小壁纸包跑通
repkg extract,确认 output 里出现 PNG - 用
repkg info -e -s -b size看 3~5 个包的清单,建立格式直觉 - 批量导出整个创意工坊目录,搭起自己的素材库
- 修改素材后把目录重新导入 Wallpaper Engine,走通"拆—改—装"闭环
RePKG 的价值不在于逆向原理多深,而在于把拆包和转图压成一行命令。挑一个壁纸包,现在就能跑起来。🔥
【免费下载链接】repkgWallpaper engine PKG extractor/TEX to image converter项目地址: https://gitcode.com/gh_mirrors/re/repkg
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考