免费纹理图集工具:Free Texture Packer 快速生成 Sprite Sheet,支持 18 种格式一键导出
【免费下载链接】free-tex-packerFree texture packer项目地址: https://gitcode.com/gh_mirrors/fr/free-tex-packer
做 2D 游戏攒到几百个图标之后,最容易被忽视的成本不在画图,而在资源打包:几十张小 PNG 散落目录里,引擎每张都要发一次绘制调用,浏览器端的请求队列也跟着越滚越长。标准解法是纹理图集——把一批小图合并成一张大图,再输出一份记录每张图位置尺寸的 description 文件。开源工具 Free Texture Packer 就是干这件事的:它跑在浏览器里、完全免费,能把 sprite sheet 和描述文件直接导出给主流引擎,另外还带一个 Electron 桌面版本。
项目速览:一个跑在浏览器里的免费纹理打包器
Free Texture Packer 是一个开源(ISC 协议)的 sprite sheet 生成器:丢进去一批小图,它自动排进一张或几张图集,同时输出与目标引擎匹配的 json、xml、css、plist 等描述文件。全程不需要注册、不需要付费版本、不需要搭服务器——web 版开箱即用,界面内置简体中文、英文、俄文等多语言选项。
核心能力:纹理图集工具能帮你做什么
- 多格式导出:预设 18 种格式,覆盖 Phaser、Phaser 3、Godot(atlas/tileset)、cocos2d、Unity、Spine、pixi.js、Unreal Paper2D 等常见目标,格式清单见 src/client/exporters/
- 重复图检测:内容完全相同的图只打包一次,导出时映射到同一区域
- 修剪与旋转:按透明度阈值裁掉图片四周透明边,并允许旋转小图,直接提升空间利用率
- Zip 导入与图集切分:直接导入整个压缩包里的图片;超大的纹理可以再拆成多张小 sheet
- TinyPNG 压缩:接入 API key 后先压缩再打包,仓库里自带服务端代理实现
与商业 Packer 的差异:格式覆盖与自定义模板
商业 TexturePacker 功能更强,但按授权收费;Free Texture Packer 的差异点在于三点具体能力。
格式覆盖不是短板。不少免费在线工具只能输出通用 JSON,而它内置了 Godot 的 atlas 和 tileset、cocos2d 的 plist、Spine atlas、Unreal 的 Paper2D 等专门模板。遇到没列出的引擎也不用等更新:导出层基于 Mustache 模板,模板能拿到 rects、config、appInfo 三组数据,结构说明直接写在 README.md 里,照着写一份自定义模板,十几分钟就能支持自己的输出格式。
第二点是双形态。web 版适合临时快速打包;Electron 桌面版能读写本地目录,不用反复把图片拖进浏览器。对不想把美术资源传到线上工具里的项目,这点很实在。
第三点是它不只有打包:重复图检测、透明边修剪、图集切分工具都内置了,README 还给出了 CLI、gulp、webpack 插件等入口,可以嵌进构建脚本里批量跑。
三步跑通第一张 sprite sheet:安装、启动、打包
装好 Node.js(建议 14 及以上版本),依次执行:
git clone https://gitcode.com/gh_mirrors/fr/free-tex-packer cd free-tex-packer && npm install然后启动 web 版:
npm run start开发服务器会监听 127.0.0.1:4000,浏览器打开后流程很简单:添加图像 → 在右侧面板设置纹理尺寸、间距、是否允许旋转、导出格式 → 点 Pack → 下载生成的纹理和描述文件。要跑桌面版就把命令换成npm run start-electron。
打包原理:MaxRects 策略是怎么被自动选中的
布局核心是 MaxRects 算法,思路是把剩余空间不断切成矩形、每次往剩余空间里塞下一张图。有意思的是 PackProcessor 并没有押注单一策略:它提供自动模式,把多种打包器 × 放置策略 × 是否允许旋转的组合各跑一遍,再用"总张数"和"利用率"(素材总面积 ÷ 纹理总面积)两个指标比出最优的一组。不知道选哪种策略时,直接交给自动模式通常不会差。此外,打包前会做透明边修剪、相同图去重,输出前还能把图集撑到 2 的幂尺寸,都是针对实际引擎约束的处理。
适合谁用:什么情况下它不是最优解
适合:中小 2D 项目(Phaser、Godot、Cocos、Unity 2D)、网页前端图标图集、个人项目的一次性打包。免费、浏览器内完成全流程,成本几乎为零。
不太适合:项目目前处于维护状态——作者在 README 里明确写了没有精力继续做功能开发,只修关键 bug。如果你依赖持续的新特性,或者需要商业化支持、更强的批量自动化管线,付费专业工具更稳;资源量特别大(几百 MB 级)时,浏览器版会有内存压力,优先用桌面版。
Free Texture Packer 说明了一件很实际的事:一个够用的免费纹理图集工具不需要很复杂。clone 下来装好依赖就能开包;以后真遇到它不支持的格式,写一份 Mustache 模板,就是最顺手的起点。
【免费下载链接】free-tex-packerFree texture packer项目地址: https://gitcode.com/gh_mirrors/fr/free-tex-packer
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考