视频拆帧
按 FPS、时间段和最大帧数抽帧,导出单帧 ZIP、精灵图 PNG 和索引 JSON。
Shanhai Game Workshop
Tool hub
视频、GIF、图片、精灵图、素材切分、地图和 Image 2,放在最前面方便日常高频处理。
按 FPS、时间段和最大帧数抽帧,导出单帧 ZIP、精灵图 PNG 和索引 JSON。
解析 GIF、拆单图网格、合并多图、生成精灵图,也能把帧序列编码为简易 GIF。
缩放、描边、透明裁切、色键抠图、像素化、局部瑕疵修复和轻量画笔编辑。
网格切片、逐帧偏移、边缘裁剪、动画预览、重组导出,适合角色动作表修整。
把一张图里散落的图标、道具或零件自动框出,也支持固定网格和手动框选导出。
多张地图块按横向、纵向或网格拼接,支持间距、背景和导出。
角色,灵宠,地图,特效。
面向素材、界面、音频和资源接入检查,适合日常开发时快速处理。
维护线索 ID、分类、路径、循环、用途和资源状态,减少 Godot 缺资源警告。
上传玩家整装 sprite sheet,切成 64x80 帧,映射 idle / walk 八方向并导出给 Godot。
多张 PNG 分层叠加,先抠背景,再逐层拖动位置、调大小和透明度,用来适配衣服、头发和配饰。
固定 1920x1080 开发预览画布,检查庭院、角色、灵宠和底部界面构图。
上传对话框、按钮或战斗界面九宫格,检查不同尺寸下的拉伸效果。
管理男主、女主、大黄、青丘绒狐、界面、音效和音乐的生产状态。
只读检查零阶段工程文件清单、音频线索、动画 key 和路径规范。
把 AI 生成的洋红背景 tileset 预览图规整成 128 预览 atlas、32px Godot atlas 和 manifest。
检查素材尺寸、色彩、字体和发布清单,减少导入游戏工程后的返工。
只做 32px 网格、脏边、接缝和 Godot TileSet 入库前检查。
只服务像素风统一色卡、色数和色差检查,不做通用配色站。
聚焦中文字符集、缺字和像素清晰度,后期再接字体图集导出。
先做交互式发布检查表,不做自动扫描整个工程。
处理地图读模、文本表、掉落模拟、任务流程、存档对比和日志整理。
检查宠物名、技能名、对白和任务文本的缺项、重复 key 与变量占位符。
先从掉落权重模拟做起,后续扩展捕捉率、成长和灵契倍率。
读取长期地图 overview,快速查看第一圈、路线分组、区域状态和东海段精卫礁护栏。
可用工具适合大黄互动、NPC 任务和剧情变量,现在已能检查断链并导出 JSON。
用于调试宠物、家园、任务和背包状态,现在已能做双存档 Diff。
粘贴 Godot 或浏览器日志后整理错误、堆栈、重复行和资源路径。
Video to frames
把一段动作视频拆成透明 PNG 序列帧,再合成适合游戏引擎导入的 Sprite Sheet。
先放入一段角色动作、技能特效或录屏素材。支持点击选择,也可以把文件拖到这个木框里。
还没有导入视频
导入后会显示文件大小、时长和原始尺寸。
等待上传视频。上传后先检查时长,再设置 FPS、时间范围和输出尺寸。
导入视频后,这里会根据 FPS、时间范围和最多帧自动估算本次会拆出多少帧。
先点击“开始拆帧”得到序列帧,再按列数和间距生成 Sprite Sheet。
暂无精灵图预览。拆帧后点击“生成精灵图”。
导出建议:先下载 ZIP 检查单帧,再下载精灵图 PNG 和索引 JSON 交给引擎或后续工具。
GIF / 帧整理
把 GIF、散图或单张动作表整理成可检查、可重排、可导出的帧序列。适合先验帧,再导出 PNG 序列、精灵图或简易 GIF。
导入动图后解析为独立 PNG 帧,会尽量保留 GIF 自带的每帧延迟,方便后续检查和重新导出。
导入多张 PNG / JPG / WebP,按文件名排序后合成帧序列。适合从 Aseprite、Godot 或截图目录继续整理。
导入一张规则动作表,按行列、边距和缝隙切成独立帧。适合 AI 出图后先拆开检查。
这里补上更顺手的帧管理:看顺序、拖拽重排、删废帧、插空白帧。导出前先在这里确认节奏。
还没有帧。先解析 GIF、载入帧图片,或把单张动作表切成帧。
先生成精灵图检查排列,再按需要导出 PNG、帧 ZIP、索引 JSON 或简易 GIF。简易 GIF 优先保证浏览器能打开,文件体积可能比专业编码器更大。
暂无精灵图预览。整理好帧序列后点击“生成精灵图预览”。
当前优先补齐前端帧管理;GIF 编码质量仍是简易版,适合像素小图快速预览。
Image processing
导入一张角色、图标或截图。只有点击“上传图片”按钮会弹出文件选择;也可以拖入这个框,或者复制图片后 Ctrl+V 粘贴。
还没有导入图片
选择、拖入或粘贴图片后,会自动展示并生成第一版抠图结果。
把绿幕、白底或黑底变透明。
边缘脏调强,误删角色调弱。
在右侧图片展示里拖出范围,只保留框内内容。
还没有裁切框。
选恢复笔或橡皮,在右侧图片展示里直接拖动。
这里显示当前图片结果;手动修补、框选裁切和框选修复都直接在这里操作。
裁掉四周透明边,避免导入游戏时留大空白。
点击开始框选后,在结果预览里拖出矩形,用于修补瑕疵、误擦或授权素材上的多余标记。
还没有框选区域。
Sheet Pro
把一张规则网格精灵图切成单帧,逐帧校准偏移和边缘裁剪,再重组成适合 Godot / Unity 导入的 Sprite Sheet。
先导入一张已经排成网格的角色、宠物或特效精灵图。工具会按“列 x 行”均分切片。
还没有导入精灵图
导入后会显示文件大小和原始尺寸。
等待导入精灵图。导入后先确认列数和行数,再点击“按网格切片”。
“追加勾选”不会取消其它帧;“只保留”会先清空其它帧,只留下这一行。
暂无帧缩略图。导入精灵图后点击“按网格切片”。
选择下方帧缩略图后,给单帧补偏移或裁掉边缘空白。偏移适合对齐脚底、武器或特效中心。
每次移动 1px;按住 Shift 再按键盘方向键会移动 4px。
还没有选中帧。
还没有可播放的帧。快捷键:A / D 切帧,方向键移动,空格播放或暂停。
这里控制最终 Sprite Sheet 的排布。只影响导出预览,不会重新切片。
建议先看动画预览确认脚底和动作中心,再生成重组预览,最后导出 PNG 与 JSON 交给引擎。
这里展示最终重组后的 Sprite Sheet。没有预览时不会下载,避免拿到旧结果。
暂无结果预览。请先切片,再生成重组预览。
Asset slice
适合把一张图里散落的图标、道具、零件、特效块切成单张 PNG;也能按固定网格切片,或在原图上手动框选补充。
只在浏览器本地处理。透明 PNG 最稳;白底、绿底等纯色背景可以切到“纯色背景”模式。
还没有导入素材图
导入后会显示文件大小和原始尺寸。
自动识别会从非背景像素找连通块;固定网格会按行列生成矩形;手动框选直接拖拽右侧原图。
等待导入图片。导入后可以先点“自动识别切片”,漏掉的地方再切到手动框选。
绿色框是已经识别出的切片,金色框是当前选中切片。切到“手动框选补充”后,直接在画布上拖框会新增切片。
空状态:导入图片后这里会显示原图和切片框。
暂无切片。可以自动识别、按网格切片,或切到手动模式后拖框。
选中任意切片后可单独下载;全部切片可以打包 ZIP,并附带 JSON 清单。
空状态:生成切片后会显示 asset_slice_manifest.json。
Map stitch
普通拼接用于把已有地图块排成一张图;扩图拼接用于从中心图向四周补图、下载重叠模板,再把生成后的扩展图拼回来。
适合已经有多张地图切片时使用。文件会按名称自然排序,例如 map_1、map_2、map_10 会按数字顺序排列。
列数只影响网格模式;如果只导入 1 张图,会自动只输出 1 列,不会多出空白画布。
这里显示最终导出的 PNG。透明背景会用棋盘格辅助查看。
先导入一张中心地图,再生成上、下、左、右扩展框。下载模板会保留重叠像素,方便拿去生成下一块图。
还没有选中扩展块。导入中心地图后,点击预览中的上、下、左、右块进行操作。
羽化只影响已上传的扩展图边缘,用来柔化 AI 扩图边界;中心图不会被羽化。
米色虚线框是待补图区域;绿色框表示已经上传。点击任意扩展块可以下载模板或上传结果。
导入中心地图后,这里会出现四周扩图框。
“生成扩图预览”会把中心图和已上传扩展块合成到同一张画布;Godot JSON 会记录每块图在大画布中的像素坐标,方便后续接引擎。
角色 / 灵宠 / 地图 / 特效
把要生成的像素素材整理成清晰中文提示词。当前不会真正上传到 GPT,参考图只在本地列名,打开 GPT 后需要你手动附上图片。
先在 ChatGPT 里创建 4 个 Custom GPT,把右侧“内置说明书”复制进去;创建后把分享链接保存到这里。以后点击按钮就会复制本次需求,并打开对应 GPT。
这段内容用于创建 Custom GPT:复制到 GPT Builder 的 Instructions / Knowledge / Conversation starters。创建完再把 GPT 链接保存到上面的对应入口。
这里适合放角色草图、灵宠参考、地图风格图或特效截图。文件不会离开浏览器,只用于在提示词里提醒你“打开 GPT 后附上这些参考”。
还没有添加参考图
先检查提示词是否写清楚“用途、规格、输出限制”。满意后复制,或用已保存的固定 GPT 入口打开对应 Custom GPT。
不确定怎么写时,先点一个模板套到左侧表单,再按当前素材改对象、画布和动作。
Image2 cleanup
专门处理 Image2 生成的整张动作表:原图里的角色位置可能不在真正网格中心,这里会先识别角色所在行列,再反推标准网格,最后导出统一规格 PNG。
当 Image2 输出的 6 x 4、4 x 4 或其它动作表“看起来排成网格,但直接切片会切偏”时,先来这里校准。它不会重新生成素材,只负责把已有整图整理成可继续进“精灵图 Pro”或 Godot 的标准格式。
把 Image2 生成的整张角色动作表拖进来。绿色背景建议保留到这里再去除,因为它更容易帮工具判断哪里是角色、哪里是空白。
还没有导入图片。
这里决定最终导出的单帧大小。默认按角色行走素材常用的 64 x 80 输出;灵宠或特效可以改成 64 x 64、80 x 80 或 96 x 96。
绿色框是当前推算出来的标准网格。它应该包住整套动作,而不是只贴着角色外轮廓。
左侧是选中单帧,右侧是整张标准输出图。发现顺序不对时,先调整行列数;发现切偏时,调起点和单格宽高。
这里显示按当前网格切出的每一帧。点任意帧会同步到“选中单帧”和预览编号,方便检查角色有没有被切断。
还没有切片。导入图片并生成标准图后,会在这里显示所有帧。
Wardrobe layer preview
可以一次选择多张图片,建议按“身体 -> 头发 -> 衣服 -> 配饰”的顺序导入。所有处理都在浏览器本地完成。
还没有导入角色图层。
背景色默认可以从当前选中图层四角采样。点“按背景色抠所有图层”后,每张图会从原图重新抠,不会叠加损伤。
先在右侧图层列表选中一层,再在画布里拖动该层;拖右下角小方块可缩放。导出 PNG 不会包含选中框。
选中一层后调整位置、缩放和透明度;隐藏的图层不会参与导出。
还没有图层。导入身体、衣服或配饰 PNG 后会显示在这里。
AI Tileset Atlas
上传 PNG 后会自动读取四角颜色作为背景色。你的洋红图如果不是纯 #ff00ff,也可以用容差继续抠掉脏边。
还没有导入 tileset 预览图。
预览 atlas 固定给你检查细节,Godot atlas 会缩到 32x32。修改行列后要重新生成粗网格或手动框选。
在原图上拖出一个矩形,会自动写入当前 tile。绿色框是已有源区,金色框是当前选中,红色半透明框是正在拖拽的新源区。
空状态:上传 PNG 后,这里会显示原图。选择 tile 编号后直接拖拽框选它的源区域。
空状态:生成后会显示 phase0_yard_tileset_manifest.json 的内容。
Backend jobs
当前页面已把前端调用口留好;真实 rembg、OpenCV、FFmpeg、队列 worker 等可以后续接在这里。
Atlas tool
输入 PNG 文件或 ZIP;输出图集 PNG、帧索引 JSON、预览报告。
零阶段玩家动画
这里先只导入 merged 整装层。背景必须是真透明 RGBA;如果是绿色背景,只能用于临时检查,不能作为正式导出。
参数只决定从整图哪里切帧,不会拉伸或裁掉单帧。`start / padding / spacing` 用来适配 AI 生成图外侧留白和帧间空隙。
横版主角纸娃娃:等待生成 schema 预览。
每个输入框填 sheet 上的第几帧,按从左到右、从上到下从 1 开始编号。映射名会输出为 `idle_down`、`walk_down_00` 这类 Godot 友好的动画帧。
预览会显示 64x80 帧框、脚底锚点十字线和地面基准线。切换方向时观察脚底是否跳动,若有抖动,先回到 Image2 或绘图软件修帧。
空状态:切帧后选择动画,这里会播放帧序列并显示脚底锚点。
第一版以 merged 整装层打通流程,同时允许额外上传 top、weapon 等单层 PNG。所有层使用同一套切片参数、帧映射和锚点;玩家工具的目标不是“看图播放”,而是验证这套图以后能不能换装。
空状态:检查后会生成 player_m_default.anim.json 结构预览。
Image batch
输入图片或 ZIP;输出处理后的图片包、重命名表和批处理报告。
Tile audit
这个检查器服务 2D 像素地图入库:先确认图片能被 32px 等网格整除,再找透明脏边、半透明毛边和边缘漏色。
Tile 大小会影响整除判断;透明边缘检查用于发现白边、半透明残留和导入 Godot 后容易露出的脏像素。
空状态:导入图片并检查后,这里会显示绿色网格;红色标记表示尺寸或透明边缘风险。
空状态:检查后会生成包含文件尺寸、tile 数量和问题类型的 JSON 清单。
音频资源
每行维护一个 Godot 音频线索。分类建议使用:界面、灵宠、战斗、音乐、环境音。状态用来区分缺失资源、临时资源和正式资源。
这里粘贴 Godot 工程里已经存在的资源路径。工具只做比对,不会扫描或修改硬盘。后续接本地扫描工具时也保持只读。
空状态:检查后会生成音频线索 JSON。
资源生产
按对象维护生产状态。状态建议使用:未开始、草图、可接入、已进 Godot、已验收。这里服务 Phase 0,不管理完整开放世界资产库。
“可接入”表示资源规格基本齐,可以放进 Godot 试;“已进 Godot”表示路径已经接到工程;“已验收”表示运行时看过比例、锚点和观感。
导出的 Markdown 可以复制到 docs/sync 或开发日志里,不会自动写文件。
空状态:这里会显示可复制的 Markdown 看板。
Localization QA
支持 CSV 或 JSON:CSV 第一列必须是 key;JSON 可以是 key 到多语言对象的映射。适合检查宠物名、技能名、UI 文案和任务对白。
语言列会参与缺项检查;最大长度用于提前发现按钮、HUD 或像素气泡装不下的文本。
Balance lab
第一版先做掉落模拟:每行写“物品名,权重,标签”。权重越大越容易出现,标签可用来标记材料、稀有、灵宠相关奖励。
模拟次数越高,结果越接近期望概率;种子相同会得到同一组结果,方便复查一次改动前后的差异。
空状态:模拟后会生成包含次数、种子、阈值和每个物品结果的 JSON 清单。
World map overview
默认读取 `docs/data/maps/long_term_world_map_overview.v0.json`。它从区域目录和路线图派生,不是新的事实源,也不代表完整开放世界已实装。
等待读取:建议从仓库根目录启动静态服务,或直接导入 overview JSON。
这个面板只帮助官网、工具台和后续 Godot 区域入口快速读地图状态。真正修改地图关系时,仍先改区域目录或路线图,再重新生成 overview。
空状态:读取 overview 后会生成可复制的 Markdown 摘要。
Flow graph
把任务或对话按一行一个节点写进来。每行建议用“ID | 标题 | next: 下个节点 | condition: 条件 | reward: 奖励 | text: 文本”,适合先把《山海有灵》的家园任务、灵宠互动和对话分支梳成可检查结构。
这里不替你写剧情,只检查节点关系。起始节点决定从哪里找断链;勾选奖励必填时,会提醒哪些任务节点还没有结算物。
空状态:生成后会输出可接入引擎的节点 JSON。
界面资源
上传底部对话框、按钮或战斗指令框的九宫格 PNG。工具会按四边切片宽度拉伸预览,检查木框、米纸底和青玉点缀会不会变形。
还没有导入九宫格图片。
四边切片越大,角和边越稳定;中间区域越小,拉伸时越容易被挤坏。底部对话框建议先按 1920x1080 下的大尺寸检查。
空状态:这里会显示九宫格参数 JSON。
Release checklist
可以粘贴打包目录里的文件路径,也可以直接选择一批文件生成清单。它不会上传或修改文件,只根据文件名检查发布前容易漏掉的启动文件、PCK、图标、说明文档、许可证和隐私政策。
平台会决定检查重点:Steam 更看重隐私政策、商店资料和崩溃日志说明;Web 更看重 index.html、资源路径和浏览器兼容说明。
空状态:检查后会生成结构化清单 JSON。
Palette lab
用于从角色、灵宠、UI 或地图图块里抽出常用颜色。当前只在浏览器本地读取图片,不会改原文件;适合检查色数是否过多、阴影和高光是否统一。
目标色数用于判断是否需要收色;合并粒度越大,相近颜色越容易归并。做像素角色时建议先用 24 或 32 色,UI 木牌和米纸底可以更少。
空状态:这里会显示 `:root { --颜色变量: #hex; }`。
Bitmap font
把本地化文本、UI 按钮、道具名或剧情对白粘进来,工具会去重生成字符集。可选上传 TTF / OTF 做浏览器预览;当前不直接写 Godot 字体资源。
格子尺寸决定每个字占多少像素;字号太大时会被裁切。列数只影响预览图集排布,不改变字符集本身。
空状态:这里会显示去重后的字符集。
只读校验
粘贴 `game/.worktrees/phase0-polish/` 的文件路径清单。浏览器不会主动扫描你的硬盘,当前第一版只根据你粘贴的清单做只读检查。
音频线索会复用左侧“音频线索管理”的表格;动画 key 可以从 Godot 的 SpriteFrames 或人工记录里粘贴。工具会检查缺文件、命名不一致和零阶段路径风险。
空状态:这里会显示结构化只读校验结果。
零阶段画面
这个工具用于开发预览,不是宣传图生成器。画布固定 1920x1080,用来判断小屋、庭院、玩家、大黄、青丘绒狐和底部界面的比例是否统一。
当前 Godot 运行时是 1920x1080 视口,但世界和战斗仍是 1280x720 逻辑 blockout 加 1.5 倍相机桥接。这里按运行时画面口径检查。
后续可以把导出的 JSON 当作外包沟通或标准场景图复查清单。
空状态:这里会显示场景图层 JSON。
Shader preview
输入 PNG;输出效果预览图、参数表和 shader 片段草稿。
Save inspector
左侧适合粘贴“修复前”或“测试前”的 JSON。只填左侧时会做格式化和异常字段检查;左右都填时会比较新增、删除和变化字段。
右侧粘贴“操作后”的 JSON。数值容差用于忽略很小的浮点变化;大数阈值用于提醒异常金币、经验、坐标等字段。
空状态:格式化后的旧存档会显示在这里。
空状态:Diff JSON 会显示在这里。
Crash log
把 Godot、Unity、Unreal、浏览器控制台或原生日志直接粘进来。工具会提取关键错误、堆栈路径、重复行和资源路径,生成更适合发 issue 的摘要。
引擎选择会影响关键字识别。一般用自动识别即可;如果日志混杂了浏览器和引擎输出,可以手动指定来源。
空状态:整理后会生成 Markdown 报告。