news 2026/8/27 12:06:45

RePKG 使用指南:一步解压 Wallpaper Engine PKG 包并转换 TEX 纹理为图片

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RePKG 使用指南:一步解压 Wallpaper Engine PKG 包并转换 TEX 纹理为图片

RePKG 使用指南:一步解压 Wallpaper Engine PKG 包并转换 TEX 纹理为图片

【免费下载链接】repkgWallpaper engine PKG extractor/TEX to image converter项目地址: https://gitcode.com/gh_mirrors/re/repkg

RePKG 是一个用 C# 编写的命令行工具,专门用于解压 Wallpaper Engine 的 PKG 资源包,并把 TEX 纹理转换成常见图片格式。适合想整理壁纸收藏的人,以及需要检查、复用包内资源的开发者。

快速上手:安装 RePKG 并跑通第一条命令

RePKG 发布的是一个单文件可执行程序,不需要安装任何运行时依赖。先克隆仓库:

git clone https://gitcode.com/gh_mirrors/re/repkg

克隆后进入目录,运行仓库自带的Publish.bat(需要 Visual Studio 的命令行环境),它会在Publish文件夹里打出一个单独的RePKG.exeRePKG.zip,复制到哪里就能在哪里用。

拿到程序后,对任意一个 PKG 文件执行:

repkg extract scene.pkg -o ./output

这条命令把scene.pkg里的所有条目解压到./output目录。你会看到控制台逐条打印* Extracting: 文件路径,其中每个 TEX 纹理除了原文件,还会多生成一张转换后的图片和一份.tex-json元数据文件。处理完打印Done

功能拆解

解压 PKG 资源包:repkg extract 命令详解

PKG 是 Wallpaper Engine 的打包格式,里面的资源平时看不到也拿不到。extract命令负责把它们全部取出来,并支持按扩展名过滤:

repkg extract -e png,tex -s E:\Games\steamapps\workshop\content\123

-e png,tex表示只提取扩展名为 png 和 tex 的文件,用逗号分隔多个;-s表示所有文件平铺到一个目录,不保留包内的路径结构。如果你输入的是目录而不是单个文件,RePKG 会自动找到该目录下的所有 PKG 逐个处理,加-r则可以递归搜索所有子文件夹。

把 TEX 纹理转换成 PNG 和 GIF 图片

TEX 是 Wallpaper Engine 的纹理格式,里面有原始像素数据(RGBA8888、R8、RG88)也有 DXT1/3/5 压缩数据,直接用图片软件打不开。RePKG 会在解压时自动转换:原始像素格式统一输出为 PNG,带动画帧的纹理按帧合成输出为 GIF。单独批量转换一个目录里的 TEX 文件:

repkg extract -t -s E:\path\to\dir\with\tex\files

-t表示把输入目录中的所有 TEX 文件转成图片,结果连同各自的.tex-json描述文件一起存到./output。每张转换后的图片尺寸、格式等信息都写在对应的 json 里,方便你核对。

把 PKG 还原成 Wallpaper Engine 项目

很多壁纸包在 Workshop 里的project.json配置文件是加密的,拿不到明文。RePKG 可以把包旁边未加密的project.json和预览图一起复制出来,拼成一个能直接打开的本地项目:

repkg extract -c -n E:\Games\steamapps\workshop\content\123

-c把每个 PKG 旁边的project.jsonpreview.jpg复制到输出目录;-n用配置文件里的名称(而不是数字 id)作为子文件夹名。产物存放在./output/项目名/下,纹理、配置、预览图齐全,放进 Wallpaper Engine 的项目目录即可加载。

查看包内容:repkg info 命令详解

不想解压、只想看看包里有什么,用info命令。它只解析包的文件头,不解压数据,几乎不占磁盘:

repkg info -e scene.pkg --title-filter "Ocean"

-e打印包内每个条目的路径和字节数;--title-filter "Ocean"只处理标题包含该关键词的项目,没有project.json的包不受影响。加-p title,author还可以只输出配置文件中指定的字段,-b size让条目按大小排序,方便定位包里的"大块头"。

真实场景走一遍

壁纸收藏整理:从整个 Workshop 目录批量提取 TEX

假设你的 Workshop 内容目录E:\Games\steamapps\workshop\content\123下有几百个壁纸项目,每个项目是一个子文件夹(里面有xxx.pkgproject.jsonpreview.jpg),你只想把所有纹理转成图片存起来。

repkg extract -e tex -s -o D:\tex_output E:\Games\steamapps\workshop\content\123

这条命令的逐条含义:-e tex只提取 TEX 条目,其他文件全部跳过;-s让所有文件平铺到D:\tex_output这一个目录里,不按原路径分散;-o D:\tex_output指定输出位置。跑完后你会得到一个全是图片的扁平目录,每张图旁还有一份.tex-json记录来源格式和尺寸,方便后续二次处理。已存在的文件默认跳过,不会覆盖你之前转换的结果,想覆盖就加--overwrite

开发流水线:批量重建可编辑的壁纸项目

如果你是开发者,想把 Workshop 里的壁纸改一改再发布,就需要每个包都带上project.json和预览图,组成合法的项目结构。

repkg extract -c -n D:\projects E:\Games\steamapps\workshop\content\123

-c负责复制每个 PKG 旁边的project.jsonpreview.jpg-n让输出文件夹用项目名命名,而不是难记的数字 id。执行后D:\projects下会生成一个子文件夹对应一个壁纸项目,内部结构:解压出的纹理(TEX 已转成图片)+ 配置文件 + 预览图。把这些文件夹拷进 Wallpaper Engine 的projects目录,每个都能作为独立项目打开和编辑。

它凭什么快/稳

先读索引表,再按需取数。PKG 的文件结构是:一段魔数标识,紧跟着条目索引表(每个条目记录文件路径、数据偏移量和长度),之后才是文件数据本体。RePKG 的解析器(见 RePKG.Application/Package/PackageReader.cs)先完整读取索引表,再按偏移量逐个定位数据块。这带来一个直接的好处:info命令只读索引表就能列出整个包的内容和每个文件的大小,不需要把数据区搬进内存,GB 级的包也能快速"报数"。

核心逻辑与格式处理分层隔离。项目拆成三个部分:RePKG.Core只定义数据模型和接口,RePKG.Application实现解析与格式转换,RePKG只是命令行入口。格式支持集中在一个枚举里维护:原始像素格式 3 种(RGBA8888、R8、RG88)、DXT 压缩格式 3 种、外加 BMP、JPG、PNG、TGA、GIF、DDS 等几十种通用图片格式。这意味着新增一种格式或修复一个解析 bug,改动范围被限制在 Application 层的一个文件内,而不是散落各处。

常见问题

支持哪些 TEX 格式?

原始像素数据(RGBA8888、R8、RG88)会被统一转换成 PNG 输出;TEX 内部本身就是 BMP、JPG、PNG 这类图片格式的,按原格式保存;带多帧动画的纹理会逐帧裁切、拼接后输出为 GIF。目前暂不支持 DXT 压缩纹理的转图,遇到会直接报错而不是静默跳过。

不解压就能查看包内容吗?

可以。repkg info -e 文件.pkg只解析文件头的索引表,打印每个条目的完整路径和字节数,配合-b size按大小排序、--title-filter按标题过滤,几秒钟就能摸清一个大包的结构,磁盘上不留任何产物。

只想提取部分文件怎么办?

extract--onlyexts-e)和--ignoreexts-i)按扩展名过滤,两者都是逗号分隔的列表,比如-e png,json只留图片和配置。注意info命令的-e是另一个含义(打印条目列表),别混用。

结语

RePKG 把"PKG 解压"和"TEX 转图"两件事做进了一个约百 KB 的单文件程序里,命令不多但每个都够用:extract干活,info查账,-c还你项目配置。仓库提供了交互式模式(运行repkg interactive)和完整的测试用例,遇到问题可以直接对照源码报 issue。

【免费下载链接】repkgWallpaper engine PKG extractor/TEX to image converter项目地址: https://gitcode.com/gh_mirrors/re/repkg

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/27 12:06:02

工业级EMC滤波器选型与安装:250V/6A-30A底盘安装式全解析

1. 先看这个参数组合:250V/6A-30A背后的行业信号 做电子设备开发和EMC整改这些年,我拿到一个滤波器选型需求时,第一反应从来不是翻datasheet对比插入损耗曲线,而是先想清楚一个问题:这设备到底工作在什么环境、过什么电…

作者头像 李华
网站建设 2026/8/27 12:05:26

超高精度运放选型与电路设计:从指标到实测的完整指南

刚把一批精密测量板从测试台撤下来,原因很有意思:电路原理完全没问题,但ADC采集到的数据就是波动了几十个微伏。查到最后,问题出在运放选型上——拿通用运放去顶一个要求0.01%精度的采样前端,等于拿普通卷尺去量千分尺…

作者头像 李华
网站建设 2026/8/27 12:04:11

MATLAB相关性分析实战:Pearson、Spearman、Kendall系数选型与避坑指南

1. 项目概述:相关性分析在数模竞赛中的核心地位数模竞赛搞了这么多年,每次看到队伍一上来就闷头建复杂模型,却对数据本身的关系视而不见,我就觉得特别可惜。相关性分析,这个听起来基础到甚至有些“老土”的步骤&#x…

作者头像 李华
网站建设 2026/8/27 12:01:54

有赞Android实习五面都挂了,复习半月再战,转拿腾讯offer

缘起 为了有赞的面试准备了半个月的样子,当时还投了美团、字节、滴滴、京东,目的只有一个,就是要进大厂,但是只有有赞扛过了一面,其他都是一面就挂了。 前三面都自我感觉良好,以为能稳拿offer的&#xff0c…

作者头像 李华
网站建设 2026/8/27 12:01:48

2W隔离DC-DC转换器:开框SMD封装选型与PCB设计要点

看到“2 W DC-DC Converters Offer Compact Open-Frame SMD Package”这个标题,我第一反应是:小功率隔离电源的贴片化,终于开始认真卷封装了。2W这个功率等级,在DC-DC产品线里属于典型的“中间地带”:比1W的电荷泵和线…

作者头像 李华