Skip to content
tsunehimatoiPublic

About

Turn layered PSDs into editable Live2D models — automatic rigging, mesh/deformer generation, physics, animation, and .cmo3/ .moc3 export.

Resources

Stars

678 stars

Watchers

3 watching

Forks

Latest commit

 

History

992 Commits

Folders and files

Repository files navigation

PSD2Live 图标

PSD2Live

开源的 2D 角色绑定与动画编辑器

从分层 PSD 自动搭出可动的初版,在同一个工作区里修形、绑骨骼、做物理与模拟、编动画,
再导出到 Cubism、VTube Studio、自带运行时、网页、游戏引擎或视频。

Release License Platform Cubism MCP

English · 日本語 · 한국어

下载 · 快速开始 · 文档 · 更新日志 · 路线图

PSD2Live 是一套完整的 2D 角色绑定工具链:从分层 PSD 自动生成网格、变形器、参数、动作与物理,在桌面编辑器中继续修改,再编译到 Cubism、自带运行时 p2lrt 和多种通用格式。它有独立的求值引擎、工程格式与分支历史;一键生成只是起点,所有修改都以可重放的编辑保存,重新生成后依然有效。

Note

Cubism 是首要导出目标,而非能力边界。骨骼、2D 模拟等 Cubism 没有的功能,在导出时烘焙为原生变形器、参数、关键形与摆锤;交付的模型不依赖 PSD2Live。

适合谁

你是 PSD2Live 能做的
零基础,只想要一个能动的模型 按命名规范分好图层,导入后选预设,几分钟得到带待机、眨眼、点头、头发物理的模型,直接导出给 VTube Studio 或网页
不熟悉建模,希望交给 AI 本地 MCP 服务让 Claude Code、Codex 等 Agent 直接读取和修改工程;每一步进入同一份历史,可在界面中检查和撤销
有经验,想省掉重复劳动 网格、变形器链、五官参数、物理一键生成,再在画布上逐项精修;手工修改以可重放的编辑保存,重新生成后依然有效
需要开源替代 编辑器、引擎和工程格式全部开源,不依赖官方 SDK 即可编辑、预览和导出 .moc3 / .cmo3
不满足于 Cubism 的功能 骨骼与 IK、2D 布料与头发模拟、自动骨架等 Cubism 没有的工具,导出时烘焙为原生结构
要把角色放进自己的程序 开源 Rust 运行时 p2lrt:C / C++、.NET、Android、网页与 Godot 均可接入,自带软件渲染器;也可导出视频、序列帧与 Spine、glTF、Unity(实验性)

核心能力

模块 能力
自动生成 识别中 / 英 / 日 / 韩图层名;自适应网格、头身变形器链、五官参数、待机 / 眨眼 / 点头 / 摇头动作、头发物理与布料模拟
画布编辑 选择、变形、编辑、模拟、骨骼、绘画、预览七种模式;形变笔刷、网格拓扑编辑、图层拆分与前后分层、Warp / Rotation、Glue
骨骼与模拟 自动骨架、FK / IK、预设动作;XPBD 布料与头发模拟;全部烘焙为 Cubism 原生结构
动画与物理 时间轴、关键帧与曲线;可视化摆锤编辑,求值与 Cubism Native Framework 对齐
纹理 纹理集排布、逐层纹理密度、可选 2× / 4× 高清化
编译与导出 所有目标从同一份中立绑定 IR 编译,逐次输出损失报告
p2lrt 运行时 开源 Rust 运行时:C ABI、软件渲染器、WebAssembly 网页播放器、Godot 4 节点、.NET 与 Android 构建;与编辑器求值逐姿势一致
Agent 本地 MCP 服务,180 余项公开操作,与界面共用编辑命令与历史,支持原子批量与试运行

能力验证

以下图片基于示例仓库中的两份 PSD(膝盖测试与身体运动动图另用一份长腿角色工程):两份示例均在导入时选用「完整」预设、未经手工修改,头发与裙摆为烘焙后的模拟。测试图由开发工具与命令行导出结果生成,界面截图取自真实编辑器窗口的渲染帧。

编辑器

动画工作区:动作列表、预览画布、参数面板与动画编辑器中的参数轨道
动画:动作列表、时间轴与曲线编辑,预览与参数随播放头同步
骨骼模式:自动推断的躯干、四肢和尾巴骨骼叠加在角色上
骨骼:画布上调整关节、FK / IK 摆姿
纹理工作区:纹理集页面上的图块排布、模型预览与纹理面板
纹理:在纹理集上排布图块,逐层设定纹理密度
开始页:左侧导航、中间预设与最近文件、右侧属性
开始:选好预设后拖入 PSD 一键生成,或新建排版工程、打开最近的工程

物理与模拟

身体角度依次上下、左右、沿椭圆运动各一轮。头发、裙子、袖子与蝴蝶结由烘焙后的模拟带动,随起伏与转向滞后摆动,停下后回摆。左侧是各部件的 pin 权重:1 跟随身体,0 完全自由,中间值按比例牵引。

左:各模拟部件(后发、前发、裙子、袖子、蝴蝶结)的 pin 权重;右:身体角度驱动角色依次上下、左右、椭圆运动,头发与布料随之滞后摆动

裙摆特写动图:同样的身体 X / Y 运动,左侧关闭模拟,裙摆僵硬跟随身体;右侧开启烘焙后的布料模拟,裙摆滞后并回摆

自动绑定

导入即得完整的头部与五官绑定:面部 Warp、五官平面、头发与身体跟随由同一条生成的变形器链驱动。

头部参数空间:两个示例角色在 AngleX ±45、AngleY ±30 九个组合下的姿态,均为自动生成、未经手工修改

五官参数:中性、眨眼、半睁加视线、张嘴、微笑、皱眉六种状态

自动 Mesh 拓扑

网格按纹理轮廓生成,孔洞、细桥与尖端各自成环,参数在全局与逐层两级可调。

拓扑压力测试:一张合成图层包含 20 个圆孔、28 条径向槽、6 孔轮毂、12 根细辐条与 4 条渐细卷须,自动网格逐一贴合;右侧为局部特写

边缘层数与内部填充的参数矩阵:行为 1 / 2 / 3 层轮廓环,列为分级泊松、自适应四叉树、轮廓铺砌、三角分形四种填充,每格标注顶点数、三角形数与耗时

包络参数:26 根间距 2–10 像素的发丝在包络宽度 0、3、8、20 下的网格,宽度越大,窄缝合并为同一轮廓,顶点越少

编辑器中示例角色长卷发的自动网格
实际素材:示例角色的长卷发,轮廓沿每一缕卷发分布
模拟模式下后发的固定点权重,顶部红色为固定,向下渐变为蓝色
顶点权重:模拟模式在同一网格上显示与刷写固定点权重(红为固定,蓝为自由)

自动骨架

按图层标签推断躯干、四肢与尾巴,骨骼烘焙为原生变形器与关键形。膝、肘按人体关节塑形:外侧顶出膝盖轮廓,内侧折叠,大腿刚性段不随小腿漂移。同一组预设动作适配不同体型。

膝关节弯折测试:长腿角色一侧小腿弯折 0°、60°、120°,以及膝盖在 0°、30°、120° 的特写,可见外侧膝盖轮廓与内侧折叠

骨架预设姿态:两个示例角色在静止与挥手、欢呼、下蹲、重心转移、害羞、歪头六个预设动作最大幅度处的姿态

p2lrt 运行时一致性

Rust 运行时逐一重放编辑器的参考姿势与轨迹;几何、物理、模拟全部通过,四种文件编码读出相同结果。

运行时与编辑器求值器的一致性:84 个绑定的最大顶点误差分布(对数坐标,均低于 0.02 像素上限或在自身灵敏度内),物理 16/16、模拟 12/12 通过

混合模式在各宿主上的一致性:18 种颜色混合模式、乘算 / 屏幕色、遮罩与反向遮罩、隔离部件组和 5 种透明度合成模式,参考光栅器、软件渲染器、网页播放器与 Godot 节点的渲染及与参考的差异

与 Cubism 的关系

PSD2Live 不依赖 Cubism Editor 或 SDK 运行,但与 Cubism 格式保持兼容。每项能力按它能否进入 Cubism 分三档:

档位 含义 例子
无损 Cubism 原生支持,或只影响编辑过程 网格、变形器、参数、物理、动作;笔刷、拆分、自动生成
烘焙 Cubism 没有,但能烘焙成关键形、参数或摆锤 骨骼与 IK、布料 / 头发模拟、摇摆生成
仅运行时 无法烘焙,只在自带运行时、网页、Godot 和光栅导出中生效 规划中的动态光照与风格化渲染,见路线图

导出 .moc3 / .cmo3 时,后两档的内容按目标版本(Cubism 3.0 – 5.3)降级,并写进损失报告。

下载

在 Releases 下载最新版本,各版本的变化见更新日志。

平台 安装包 说明
Windows 10 / 11 x64 便携版 ZIP、EXE 自带 Java 运行时,解压或安装后直接运行;每种都另有内置 ffmpeg 的 -ffmpeg 版本
Windows 11 ARM64 便携版 ZIP、EXE 自带 Java 运行时;不含 Cubism 原生预览(Live2D 未提供该平台的 Cubism Core),预览使用 PSD2Live 运行时
Linux x86_64 / arm64 Deb、tar.gz 自带运行时与 Cubism 原生预览(arm64 为 Live2D 的实验性版本),需要 X11 / GLX(XWayland 可用);tar.gz 供没有 Deb 的发行版,解压后运行 PSD2Live/bin/PSD2Live
macOS 及其他 暂无安装包 安装 JDK 21 后从源码运行
升级、卸载与 Linux 说明
  • 升级:安装到已安装的目录,无需再选路径;3.1.x 及更早的 EXE / MSI 安装会被自动移除并沿用原目录。
  • 卸载:默认保留设置与工作区数据;卸载时询问是否同时删除 PSD2Live 的数据,选「是」可一并删除。已保存的工程文件和你放在安装目录里的文件始终保留。
  • Linux:原生预览不支持无 XWayland 的纯 Wayland 和 musl(如 Alpine),这些环境会自动回退到内置渲染。详见 Cubism Native 预览。

快速开始

  1. 导入 PSD:文件 → 新建 → 从 PSD 新建工程…(Ctrl+Shift+O),或把 PSD 拖进窗口。导入前在「开始」页的「从 PSD 生成」中选好模型预设(右侧属性面板可逐项调整)(最小 / 默认 / 完整),导入后自动生成并进入编辑;画在同一层的左右部件(如左右腿)用「模型 → 按网格拆分图层…」拆开。
  2. 核对识别结果:在「图层」表格中检查每层的部件类型、侧别与差分设置,识别错的直接改。
  3. 预览与修改:切到「预览」工作区检查动作和物理,再按需进入编辑、绑定、动画、物理、纹理工作区。
  4. 保存与导出:Ctrl+S 保存 .psd2live 工程;Ctrl+G 导出 .moc3 / .cmo3,其他格式在 文件 → 导出为 中。

Tip

第一次使用,请按 F1 打开帮助页的「教程」。 程序内教程会高亮对应控件,并按你当前的快捷键提示操作,分为零基础(19 课)和 Cubism 经验者(14 课)两条路线。操作速查是它的文字版。

准备素材

自动生成的质量主要取决于 PSD 分层:

  • 眼白、瞳孔、上睫毛分层,瞳孔保留被眼皮遮住的部分;
  • 提供张嘴素材(或分出上牙、下牙、舌头);
  • 前发与后发分开,为遮挡区域留余量;
  • 身体基本正立,图层效果与文字事先栅格化。

完整命名表见 PSD 素材与命名。未识别的图层会保留,可在界面中手动指定类型。

导出与播放

去向 输出
Cubism Editor .cmo3 模型工程,在官方编辑器中检查与精修
Cubism 运行时 .model3.json + .moc3 + 纹理、物理、动作等文件族,从 .model3.json 加载
VTube Studio .moc3 文件族加 .vtube.json,面部跟踪映射到标准参数,每个动作一个热键
自己的程序 / 引擎 / 网页 .p2lrt 模型,用于 C / C++、.NET、Unity、Godot、Android,或可直接在浏览器打开的 WebGL 播放页面
图片与视频 PNG 序列帧、精灵表、GIF;APNG、WebP 动图、MP4、WebM、ProRes 4444(经 ffmpeg)
PSD 按当前姿势输出分层 PSD,或导出含生成图层的源 PSD
实验性 Spine 4.2、DragonBones 5.5、glTF 2.0 只能经命令行导出。Unity 预制体在 文件 → 导出为 中

Ctrl+G 导出 Cubism 格式,目标版本可选 3.0 – 5.3(默认 5.0);其余在 文件 → 导出为 中。详见导出目标。

Important

继续工作请保存 .psd2live 工程,它包含原始 PSD、素材、设置、全部编辑与历史分支;导出时附带的 .psd2live.json 只是诊断报告。导出成功也不等于在所有运行时中效果一致,正式交付前请在目标编辑器和运行环境中检查,支持范围见运行时与导出边界。

内置渲染无需任何官方 SDK;Cubism Native 预览是可选项,用于对照官方运行时的渲染与物理。

p2lrt 运行时

runtime/ 是开源(MIT)的 Rust 运行时,播放导出的 .p2lrt 模型。编辑器的软件预览由同一个库求值。

项目 说明
核心求值 与 Cubism 等价的 Warp / Rotation 变形、混合形、Glue、部件与绘制顺序、透明度与颜色通道;与编辑器求值逐姿势一致
物理与动作 按 physics3.json 语义的摆锤物理,含风力与稳定;最多 16 层动作按优先级叠加,支持事件与部件 / 整体透明度曲线,淡入淡出与 Cubism 相同;多个表情可同时生效
程序化行为 眨眼、呼吸、视线跟随、口型(可由音频驱动);宿主层可在动作之上叠加外部参数(如面捕)
高级扩展 可选开启:关节运行时蒙皮、精确链接、XPBD 实时布料与头发及碰撞;关闭时结果与核心求值逐位一致
渲染 宿主按头文件中的绘制规则自行绘制,或调用内置软件渲染器 p2l_render 直接画进 RGBA 图像:全部颜色与透明度混合模式、遮罩、隔离组与剔除,与编辑器的参考光栅器一致;逐网格的变化标志让宿主只上传改动部分
宿主集成 一份只读模型供多个实例共享;分阶段更新、部件透明度与颜色覆盖、点击区域、日志与宿主内存分配器;内部错误只使该句柄失效,不会中止宿主
文件格式 .p2lrt 2.0:分块容器,核心块与 moc3 一一对应,扩展块可选;支持 deflate / zstd 压缩,同一 IR 写出字节完全相同
接入方式 C / C++ 头文件 p2l_runtime.h 与动态 / 静态库(可用于 Unreal)、.NET P/Invoke 绑定与 Unity 组件示例、Android(arm64-v8a、armeabi-v7a、x86_64)、WebAssembly 网页播放器、Godot 4 节点 P2LCharacter(runtime/godot/),见其他语言与平台(英文)
网页播放器在浏览器中播放示例角色,下方有动作、表情和口型控件
网页播放器(WebAssembly + WebGL)
Godot 4 中的 P2LCharacter 节点显示示例角色
Godot 4 节点

格式与求值规则见运行时与 .p2lrt 2.0 格式。

连接 Agent(MCP)

  1. MCP 服务默认开启,随 PSD2Live 启动监听 http://127.0.0.1:23871/mcp。打开 设置 → MCP(标题栏右侧的齿轮)可关闭它,或设置端口、访问令牌和发布的工具集(默认精简)。访问令牌以明文保存在本机用户偏好(Java Preferences)中。
  2. 复制与你的宿主对应的命令或配置(Claude Code、Codex、通用 JSON)。只支持 Stdio 的宿主使用仓库根目录的 mcp_proxy.py。
  3. 让 Agent 先用 workspace_overview 读取工程概况、workspace_inspect 查看单个对象;未列为工具的操作用 workspace_list_operations 查找、经 workspace_call 调用。

多项编辑可用 workspace_apply_edits 原子提交(全部成功或全部不生效),也可先用 workspace_preview_edits 试运行。接口说明见 MCP 使用与接口。

Note

MCP 本身不生成图片,新增素材需要宿主具备图像生成能力。工具可调用不代表复杂建模任务已经可靠,能力实测记录了真实任务的成功与失败样本。

从源码构建

需要 JDK 21,Gradle 使用仓库自带的 Wrapper。安装了 Rust(cargo,rustc 1.87 及以上)时会同时构建 Rust 运行时;没有 cargo 或 rustc 版本过旧时,Linux 会先下载 CI 按同一份 runtime/ 源码构建的预编译库(-Ppsd2live.prebuiltRuntime=false 可关闭),下载不到则跳过并给出提示,编辑器改用内置求值器(rustup update 后即可构建)。

# 启动 GUI(Windows:.\gradlew.bat run 或 run-gui.bat)
./gradlew run

# 命令行直接从 PSD 生成模型
python tools/examples/fetch.py --case tml
./gradlew run --args="--input examples/tml/psd-input/tml.psd --output build/example-output"

# 把工程导出为其他格式,例如 GIF
./gradlew run --args="export model.psd2live --target gif --set clip=Nod"

# 运行测试 / 打当前平台安装包
./gradlew test
./gradlew packageDistributionForCurrentOS

源码构建默认使用内置渲染,官方 Cubism SDK 需自行取得并单独构建桥接库。完整 CLI 参数、打包方式与原生预览构建见开发与命令行。

文档

上手 绑定与动画 参考
操作速查 骨骼与姿态 PSD 素材与命名
画布编辑 摇摆生成 变形器与参数
前后分层 物理 导出目标
纹理高清化 模拟与烘焙 运行时
变形路径 模拟图文教程 运行时与导出边界
开发与命令行 MCP 使用与接口 工程格式 · 文档层

全部文档见文档目录,示例素材、工程、制作案例、Prompt 与 Skill 见示例仓库,后续方向见路线图。

参与贡献

欢迎提交 Issue、可复现的 PSD、文档修正与代码改进。

也欢迎向示例仓库投稿,分享素材、工程、制作经验、Prompt 或 Skill,未完成或失败的尝试同样有参考价值。

  • 报告问题:附上版本、操作系统、复现步骤、预期与实际效果,以及日志面板中的相关记录。
  • 提交代码:先运行与改动相关的测试(./gradlew test);新的编辑功能需要能随工程保存并在重开后重放,见开发与命令行。
  • Agent 案例:请同时记录宿主、模型、返工次数与消耗,格式见能力实测。

许可

部分 许可
应用本身、引擎 umamo、Cubism 与 PSD 导出目标 GPL-3.0
中立绑定 IR format-model、导出框架 format-compile、其余导出目标、Rust 运行时 runtime/ MIT,可单独复用

应用整体以 GPL-3.0 发布,各模块许可见其 LICENSE 与导出目标。第三方组件见 THIRD_PARTY_NOTICES.md,示例素材的使用条件见各自说明。

PSD2Live 是独立项目,与 Live2D Inc. 无隶属或赞助关系。本仓库不包含、也不分发 Live2D Cubism SDK 的专有组件;Live2D 和 Cubism 是 Live2D Inc. 的商标。

About

Turn layered PSDs into editable Live2D models — automatic rigging, mesh/deformer generation, physics, animation, and .cmo3/ .moc3 export.

Resources

Stars

678 stars

Watchers

3 watching

Forks

Releases

Packages

Contributors

Languages