refactor: 重构纹理图集工具,实现浏览器端实时处理

将合图处理从服务端迁移到浏览器端,使用 Web Worker 实现高性能打包算法,新增三栏布局界面和精灵动画预览功能

- 新增 atlasStore 状态管理,实现文件、配置、结果的统一管理
- 新增 atlas-packer 打包算法库(MaxRects/Shelf),支持浏览器端快速合图
- 新增 atlas-worker Web Worker,实现异步打包处理避免阻塞 UI
- 新增三栏布局组件:FileListPanel、CanvasPreview、AtlasConfigPanel
- 新增 AnimationPreviewDialog 支持精灵动画帧预览和帧率控制
- 优化所有工具页面的响应式布局和交互体验

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-26 22:05:25 +08:00
parent 663917f663
commit 140608845a
27 changed files with 4034 additions and 499 deletions

View File

@@ -333,6 +333,30 @@
"dragHint": "Drag slider or click to compare",
"filename": "Filename"
},
"atlas": {
"dropSprites": "Drop sprites here",
"supportFolder": "Supports folder drag and drop",
"selectFiles": "Select Files",
"selectFolder": "Select Folder",
"preview": "Preview",
"emptyPreview": "Upload sprites to preview atlas",
"dragHint": "Drag files or folder to left panel",
"panHint": "Drag to pan, scroll to zoom",
"packing": "Packing...",
"rendering": "Rendering...",
"previewAnimation": "Preview Animation",
"sizeSettings": "Size Settings",
"layoutSettings": "Layout Settings",
"outputSettings": "Output Settings",
"resultInfo": "Atlas Info",
"animationPreview": "Animation Preview",
"animationDescription": "Preview sprite sequence animation",
"frame": "Frame",
"fps": "FPS",
"spriteSize": "Sprite Size",
"totalFrames": "Total Frames",
"duration": "Duration"
},
"footer": {
"tagline": "Media processing tools for game developers. Extract frames, compress images, optimize audio.",
"note": "Inspired by modern product storytelling—centered on your workflow, not UI noise.",