scene.pkg 打不开?repkg 一条命令解包,tex 变回 PNG
【免费下载链接】repkgWallpaper engine PKG extractor/TEX to image converter项目地址: https://gitcode.com/gh_mirrors/re/repkg
从 Wallpaper Engine 工坊下载壁纸,拿到手却是个scene.pkg,双击没有反应,改后缀也没用。这类文件是引擎专用的打包格式,普通看图软件根本不认识。用 repkg 解包一次,包里的素材会原样释放出来,其中的.tex贴图还会被转成 PNG 或 GIF,目录结构保持不变。
🧩 搞清它能做什么
repkg 是一个用 C# 写的命令行工具,专门干两件事:拆开 Wallpaper Engine 的 PKG 包,把 TEX 贴图转成常见图片格式。它只能"拆和转",不能编辑贴图内容,也不负责处理其他游戏引擎的包格式。
| 处理前 | 处理后 |
|---|---|
scene.pkg双击无法打开 | 原始文件全部释放,目录结构与包内一致 |
.tex贴图没有软件能读 | 生成同名 PNG / GIF,外加一份.tex-json记录尺寸、格式等元数据 |
| 不知道包里装了什么 | repkg info直接打印条目清单和大小 |
✅ 备齐运行环境
先确认三样东西:
- .NET SDK:验证命令
dotnet --version,能打印版本号即可。 - .NET Framework 4.7.2 或更高:仅 Windows 需要,项目目标框架是
net472。 - git:验证命令
git --version,用来拉取源码。
全部就绪后克隆并编译:
git clone https://gitcode.com/gh_mirrors/re/repkg cd repkg dotnet build RePKG.sln -c Release第一条把源码拉到当前目录;第二条进入项目;第三条编译,-c Release生成正式版。完成后程序产物在RePKG/bin/Release目录里。
📦 解包单个 PKG
目标:把一个包的全部内容拆出来,并顺手把贴图转成图片。
repkg extract scene.pkg -o ./output-o指定输出目录,不写时默认就是./output。预期输出:
### Extracting package: /d/wallpaper/scene.pkg * Extracting: materials/night_city.png * Extracting: materials/road.tex * Reading: materials/road.tex Done第一行说明正在处理哪个包;* Extracting表示原始文件已写出;* Reading表示正在读取贴图准备转图;Done出现即成功。打开output会发现结构与包内一模一样,每张贴图旁多了同名的 PNG 和.tex-json。
🗂 批量处理收藏目录
目标:一次拆完整个收藏夹里的所有包,并保留工程配置。
repkg extract -r -c D:\wallpaper\collection -o ./projects-r让工具递归进入所有子文件夹找.pkg;-c会把每个包旁边的project.json和预览图一并复制到输出目录。结果按壁纸 ID 分好文件夹,每个都是能重新导入 Wallpaper Engine 的完整工程。
✂️ 过滤条目或只转散装 tex
包里文件很多、只想要贴图时,用-e白名单放行指定扩展名,逗号分隔;反过来用-i排除指定类型:
repkg extract scene.pkg -e tex,png -o ./tex_only如果手上只有散落的.tex文件,加-t声明"目录里全是贴图,直接转",再配-s把结果平铺到同一个输出目录:
repkg extract -t -s ./tex_folder -o ./png_out动手前想先看看包里有什么,用repkg info scene.pkg -e列出条目清单即可。
⚠️ 排查常见报错
| 报错原文 | 原因 | 修复动作 |
|---|---|---|
repkg 不是内部或外部命令 | 可执行文件不在系统 PATH 里 | 先进RePKG/bin/Release目录运行,或用完整路径调用 |
Input file not found | 输入路径写错或文件不在当前目录 | 先确认当前目录,再核对文件名 |
Unknown magic: '...' in '...' | 文件损坏或不是有效 tex(有效贴图文件头以TEXV0005开头) | 从可靠来源重新下载再试 |
* Skipping, already exists: ... | 输出文件已存在,默认跳过 | 加--overwrite强制覆盖 |
Unrecognized file extension: .mp4 | 输入既不是 pkg 也不是 tex | 检查传参,把正确的文件交给 extract |
🚀 规划下一步
- 读源码:入口在 Program.cs,
extract和info两个动词各对应一个解析器;拆包逻辑集中在 RePKG/Command/Extract.cs,转图逻辑在 RePKG/Command/Info.cs 同级的 Application 层里,跟一遍一条命令从输入到输出的完整链路。 - 写脚本:把"遍历目录 →
extract -e tex -s只留贴图 → 输出清单"串成一个 shell 脚本,几百个包一条命令跑完。
素材本身受原作者版权保护,拆出来只用于合法创作;遇到解析不了的包,直接把报错信息反馈给项目作者,工具才能越用越稳。
【免费下载链接】repkgWallpaper engine PKG extractor/TEX to image converter项目地址: https://gitcode.com/gh_mirrors/re/repkg
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考