PSD2Live 아이콘 # PSD2Live **오픈 소스 2D 캐릭터 리깅·애니메이션 편집기** 레이어로 나뉜 PSD에서 움직이는 초안을 자동으로 만들고, 하나의 작업 공간에서 형태 수정, 뼈대, 물리와 시뮬레이션, 애니메이션까지 다룬 뒤
Cubism, VTube Studio, 자체 런타임, 웹, 게임 엔진, 동영상으로 내보냅니다. [![Release](https://img.shields.io/github/v/release/tsunehimatoi/psd2live?label=download)](https://github.com/tsunehimatoi/psd2live/releases/latest) [![License](https://img.shields.io/badge/license-GPL--3.0%20%2F%20MIT-blue)](#라이선스) [![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20Linux-lightgrey)](#다운로드) [![Cubism](https://img.shields.io/badge/Cubism-3.0%20%E2%80%93%205.3-ff6b9d)](#내보내기와-재생) [![MCP](https://img.shields.io/badge/MCP-180%2B%20ops-8a63d2)](#에이전트-연결mcp) [中文](../../README.md) · [English](../en/README.md) · [日本語](../ja/README.md) [다운로드](https://github.com/tsunehimatoi/psd2live/releases/latest) · [빠른 시작](#빠른-시작) · [문서](../README.md) · [변경 이력](../zh/CHANGELOG.md) · [로드맵](../zh/ROADMAP.md)
PSD2Live는 2D 캐릭터 리깅을 위한 완결된 도구 체인입니다. 레이어로 나뉜 PSD에서 메시, 디포머, 파라미터, 모션, 물리를 자동 생성하고, 데스크톱 편집기에서 계속 수정한 뒤 Cubism, 자체 런타임 p2lrt, 여러 범용 형식으로 컴파일합니다. 독자적인 평가 엔진, 프로젝트 형식, 분기 히스토리를 갖추고 있으며, 원클릭 생성은 출발점일 뿐입니다. 모든 수정은 재생 가능한 편집 기록으로 저장되어 다시 생성한 뒤에도 그대로 적용됩니다. > [!NOTE] > Cubism은 주요 내보내기 대상일 뿐 기능의 한계가 아닙니다. 뼈대, 2D 시뮬레이션처럼 Cubism에 없는 기능은 내보낼 때 네이티브 디포머, 파라미터, 키폼, 진자로 베이크되며, 납품한 모델은 PSD2Live에 의존하지 않습니다. ## 이런 분께 | 당신이 | PSD2Live가 해 주는 일 | | --- | --- | | **입문자라 일단 움직이는 모델이 필요하다면** | 명명 규칙대로 레이어를 나누고 가져와서 프리셋을 고르면, 몇 분 만에 대기·눈 깜빡임·끄덕임·머리카락 물리가 있는 모델이 만들어지고 VTube Studio나 웹으로 바로 내보낼 수 있습니다 | | **모델링이 익숙하지 않아 AI에 맡기고 싶다면** | 로컬 MCP 서버로 Claude Code, Codex 같은 에이전트가 프로젝트를 직접 읽고 수정합니다. 모든 단계가 같은 히스토리에 기록되어 편집기에서 확인하고 취소할 수 있습니다 | | **경험자로서 반복 작업을 줄이고 싶다면** | 메시, 디포머 체인, 얼굴 파라미터, 물리를 원클릭으로 생성한 뒤 캔버스에서 세부를 다듬습니다. 수작업 수정은 재생 가능한 기록으로 저장되어 다시 생성해도 유지됩니다 | | **오픈 소스 대안이 필요하다면** | 편집기, 엔진, 프로젝트 형식이 모두 오픈 소스이며, 공식 SDK 없이 편집, 미리보기, `.moc3` / `.cmo3` 내보내기가 가능합니다 | | **Cubism의 기능으로는 부족하다면** | 뼈대와 IK, 2D 천·머리카락 시뮬레이션, 자동 뼈대 등 Cubism에 없는 도구를 내보낼 때 네이티브 구조로 베이크합니다 | | **캐릭터를 내 프로그램에 넣고 싶다면** | 오픈 소스 Rust 런타임 p2lrt는 C / C++, .NET, Android, 웹, Godot에 연동되며 소프트웨어 렌더러를 내장합니다. 동영상, 연번 이미지, Spine, glTF, Unity(실험적)로도 내보낼 수 있습니다 | ## 핵심 기능 | 분야 | 기능 | | --- | --- | | **자동 생성** | 중 / 영 / 일 / 한 레이어 이름 인식. 적응형 메시, 머리와 몸의 디포머 체인, 얼굴 파라미터, 대기 / 깜빡임 / 끄덕임 / 고개 젓기 모션, 머리카락 물리와 천 시뮬레이션 | | **캔버스 편집** | 선택, 변형, 편집, 시뮬레이션, 뼈대, 페인트, 미리보기의 7가지 모드. 변형 브러시, 메시 토폴로지 편집, 레이어 분할과 앞뒤 분할, Warp / Rotation, Glue | | **뼈대와 시뮬레이션** | 자동 뼈대, FK / IK, 프리셋 모션, XPBD 천·머리카락 시뮬레이션. 모두 Cubism 네이티브 구조로 베이크 | | **애니메이션과 물리** | 타임라인, 키프레임, 커브. 진자를 시각적으로 편집하며 평가 결과는 Cubism Native Framework와 일치 | | **텍스처** | 아틀라스 배치, 레이어별 텍스처 밀도, 선택적 2× / 4× 고해상도화 | | **컴파일과 내보내기** | 모든 대상을 하나의 중립 리그 IR에서 컴파일하고, 내보낼 때마다 손실 보고서를 출력 | | **p2lrt 런타임** | 오픈 소스 Rust 런타임: C ABI, 소프트웨어 렌더러, WebAssembly 웹 플레이어, Godot 4 노드, .NET과 Android 빌드. 편집기의 평가와 포즈 단위로 일치 | | **에이전트** | 180개가 넘는 공개 작업을 제공하는 로컬 MCP 서버. 편집기와 편집 명령·히스토리를 공유하며 원자적 일괄 편집과 시험 실행 지원 | ## 기능 검증 아래 이미지는 저장소의 예제 PSD 두 개로 만들었습니다(무릎 테스트와 몸 움직임 애니메이션은 다리가 긴 별도의 캐릭터 프로젝트 사용). 두 예제 모두 가져올 때 「전체」 프리셋을 고르고 수작업 수정은 하지 않았으며, 머리카락과 치마는 베이크된 시뮬레이션으로 움직입니다. 테스트 이미지는 개발 도구와 명령줄 내보내기 결과로, 편집기 화면은 실제 편집기 창의 렌더링 프레임으로 만들었습니다. ### 편집기
애니메이션 작업 공간: 모션 목록, 미리보기 캔버스, 파라미터 패널, 애니메이션 편집기의 파라미터 트랙
애니메이션: 모션 목록, 타임라인과 커브 편집. 미리보기와 파라미터가 재생 위치를 따라감
뼈대 모드: 자동 추정된 몸통, 팔다리, 꼬리 뼈대가 캐릭터 위에 겹쳐 있음
뼈대: 캔버스에서 관절을 조정하고 FK / IK로 포즈 지정
텍스처 작업 공간: 아틀라스 페이지의 타일 배치, 모델 미리보기, 텍스처 패널
텍스처: 아틀라스에 타일을 배치하고 레이어별 텍스처 밀도 설정
시작 페이지: 사이드바, 프리셋과 최근 파일, 속성 패널
시작: 프리셋을 고르고 PSD를 끌어다 놓으면 한 번에 생성. 레이아웃 프로젝트와 최근 프로젝트도 여기서
### 물리와 시뮬레이션 몸 각도를 위아래, 좌우, 타원 순으로 한 바퀴씩 움직입니다. 머리카락, 치마, 소매, 리본은 베이크된 시뮬레이션으로 따라오며, 오르내림과 방향 전환에 늦게 반응해 흔들리고 멈춘 뒤 되돌아 흔들립니다. 왼쪽은 부위별 핀 가중치로, 1은 몸을 따르고 0은 자유이며 중간값은 비례해 끌어당깁니다.

왼쪽: 시뮬레이션 부위(뒷머리, 앞머리, 치마, 소매, 리본)별 핀 가중치. 오른쪽: 몸 각도에 따라 위아래, 좌우, 타원으로 움직이고 머리카락과 천이 늦게 따라 흔들림

치마 확대 애니메이션: 같은 몸 움직임에서 왼쪽은 시뮬레이션이 꺼져 치마가 몸을 딱딱하게 따라가고, 오른쪽은 베이크된 천 시뮬레이션으로 늦게 따라와 되돌아 흔들림

### 자동 리깅 가져오기만 하면 머리와 얼굴 리그가 완성됩니다. 얼굴 Warp, 이목구비 평면, 머리카락과 몸의 추종은 생성된 하나의 디포머 체인으로 구동됩니다. ![머리 파라미터 공간: 두 예제를 AngleX ±45, AngleY ±30의 9가지 조합으로 표시. 모두 자동 생성이며 수작업 수정 없음](../imgs/readme/rig-head.webp) ![얼굴 파라미터: 기본, 눈 깜빡임, 반쯤 감은 눈과 시선, 입 벌림, 미소, 찡그림](../imgs/readme/rig-face.webp) ### 자동 메시 토폴로지 메시는 텍스처 윤곽을 따라 생성되며 구멍, 가는 연결부, 끝부분이 각각 독립된 윤곽 루프가 됩니다. 설정은 전체와 레이어 단위로 조정할 수 있습니다. ![토폴로지 스트레스 테스트: 원형 구멍 20개, 방사형 슬롯 28개, 구멍 6개인 허브, 가는 살 12개, 끝이 가늘어지는 덩굴 4개가 있는 합성 레이어에 자동 메시가 각각 맞춰짐. 오른쪽은 부분 확대](../imgs/readme/mesh-stress.webp) ![가장자리 층수와 내부 채우기 행렬: 행은 1 / 2 / 3층 윤곽 링, 열은 단계적 푸아송, 적응형 쿼드트리, 윤곽 포장, 삼각 프랙털. 각 칸에 정점 수, 삼각형 수, 소요 시간 표시](../imgs/readme/mesh-params.webp) ![감싸기: 간격 2–10 px인 머리카락 26가닥을 감싸기 폭 0, 3, 8, 20으로 메시화. 폭이 넓을수록 좁은 틈이 하나의 윤곽으로 합쳐져 정점이 줄어듦](../imgs/readme/mesh-wrap.webp)
편집기에서 예제 캐릭터의 긴 곱슬머리에 생성된 자동 메시
실제 소재: 예제 캐릭터의 긴 곱슬머리. 윤곽이 곱슬 한 가닥 한 가닥을 따라감
시뮬레이션 모드에서 뒷머리의 고정 가중치. 위쪽 빨간색은 고정, 아래로 갈수록 파란색
정점 가중치: 시뮬레이션 모드에서 같은 메시에 고정 가중치를 표시하고 칠함(빨강은 고정, 파랑은 자유)
### 자동 뼈대 레이어 태그로 몸통, 팔다리, 꼬리를 추정하고 뼈대를 네이티브 디포머와 키폼으로 베이크합니다. 무릎과 팔꿈치는 사람의 관절처럼 형태가 잡혀 바깥쪽은 무릎뼈가 둥글게 드러나고 안쪽은 접히며, 허벅지의 강체 부분은 정강이를 따라 밀리지 않습니다. 같은 프리셋 모션이 서로 다른 체형에 맞습니다. ![무릎 테스트: 다리가 긴 캐릭터의 한쪽 정강이를 0°, 60°, 120°로 굽힌 모습과 0°, 30°, 120°에서의 무릎 확대. 바깥쪽 무릎뼈와 안쪽 접힘이 보임](../imgs/readme/rig-knee.webp) ![프리셋 포즈: 두 예제의 정지 상태와 손 흔들기, 환호, 웅크리기, 무게 중심 이동, 수줍음, 고개 기울이기 6가지 프리셋의 최대 포즈](../imgs/readme/rig-body.webp) ### p2lrt 런타임 일치성 Rust 런타임이 편집기의 기준 포즈와 궤적을 하나씩 재생합니다. 기하, 물리, 시뮬레이션이 모두 통과하며 네 가지 파일 인코딩에서 같은 결과를 읽어 냅니다. ![런타임과 편집기 평가기의 일치성: 리그 84개의 최대 정점 오차(로그 축). 모두 0.02 px 이내이거나 자체 민감도 범위 안. 물리 16/16, 시뮬레이션 12/12 통과](../imgs/readme/runtime-conformance.webp) ![호스트별 블렌드 모드 일치성: 색 블렌드 18종, 곱하기 / 스크린 색, 마스크와 반전 마스크, 분리 파츠 그룹, 알파 합성 5종을 기준 래스터라이저, 소프트웨어 렌더러, 웹 플레이어, Godot 노드로 렌더링하고 기준과의 차이를 표시](../imgs/readme/runtime-blend.webp) ## Cubism과의 관계 PSD2Live는 Cubism Editor나 SDK 없이 동작하면서 Cubism 형식과의 호환성을 유지합니다. 각 기능은 Cubism에 들어갈 수 있는지에 따라 세 단계로 나뉩니다. | 단계 | 의미 | 예 | | :---: | --- | --- | | **무손실** | Cubism이 네이티브로 지원하거나 편집 과정에만 영향 | 메시, 디포머, 파라미터, 물리, 모션. 브러시, 분할, 자동 생성 | | **베이크** | Cubism에는 없지만 키폼, 파라미터, 진자로 베이크 가능 | 뼈대와 IK, 천 / 머리카락 시뮬레이션, 흔들림 생성 | | **런타임 전용** | 베이크할 수 없으며 자체 런타임, 웹, Godot, 래스터 내보내기에서만 동작 | 계획 중인 동적 조명과 스타일 렌더링. [로드맵](../zh/ROADMAP.md)(중국어) 참고 | `.moc3` / `.cmo3`로 내보낼 때 뒤의 두 단계는 대상 버전(Cubism 3.0 – 5.3)에 맞게 변환되고 손실 보고서에 기록됩니다. ## 다운로드 [Releases](https://github.com/tsunehimatoi/psd2live/releases/latest)에서 최신 버전을 받을 수 있으며, 버전별 변경 사항은 [변경 이력](../zh/CHANGELOG.md)(중국어)을 참고하세요. | 플랫폼 | 패키지 | 설명 | | --- | --- | --- | | 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 네이티브 미리보기](../en/guide/CUBISM_SDK_SETUP.md)(영어)를 참고하세요.
## 빠른 시작 1. **PSD 가져오기**: **파일 → 새로 만들기 → PSD에서 새 프로젝트…**(`Ctrl+Shift+O`)를 선택하거나 PSD를 창에 끌어다 놓습니다. 가져오기 전에 시작 페이지의 PSD에서 생성 항목에서 모델 프리셋(최소 / 기본 / 전체)을 골라 두면 모델을 생성해 편집을 엽니다. 한 레이어에 함께 그린 좌우 파츠(양쪽 다리 등)는 **모델 → 메시별로 레이어 나누기…**로 나눕니다. 2. **인식 결과 확인**: 레이어 표에서 각 레이어의 파츠 종류, 좌우 구분, 차분 설정을 확인하고 잘못 인식된 항목은 바로 고칩니다. 3. **미리보기와 수정**: 미리보기 작업 공간에서 모션과 물리를 확인한 다음, 필요에 따라 편집·리깅·애니메이션·물리·텍스처 작업 공간에서 수정합니다. 4. **저장과 내보내기**: `Ctrl+S`로 `.psd2live` 프로젝트를 저장하고, `Ctrl+G`로 `.moc3` / `.cmo3`를 내보냅니다. 다른 형식은 **파일 → 다른 형식으로 내보내기**에 있습니다. > [!TIP] > **처음 사용한다면 `F1`로 도움말 페이지의 「튜토리얼」을 여세요.** 앱 내 튜토리얼은 해당 컨트롤을 강조 표시하고 현재 단축키 설정에 맞춰 안내합니다. 입문자 코스(18강)와 Cubism 경험자 코스(13강)가 있으며, [사용자 가이드](../en/guide/USER_GUIDE.md)(영어)가 그 텍스트판입니다. ### 소재 준비 자동 생성의 품질은 주로 PSD 레이어 구성에 달려 있습니다. - 흰자, 홍채, 윗속눈썹을 나누고, 눈꺼풀에 가려지는 홍채 부분도 남겨 둡니다. - 입을 벌린 소재를 준비합니다(또는 윗니, 아랫니, 혀를 나눕니다). - 앞머리와 뒷머리를 나누고, 가려지는 영역에 여유를 둡니다. - 몸은 대체로 똑바로 세우고, 레이어 효과와 텍스트는 미리 래스터화합니다. 전체 명명 규칙은 [PSD 소재와 명명 규칙](../en/spec/PSD_LAYER_SPEC.md)(영어)에 있습니다. 인식되지 않은 레이어도 남아 있으며 화면에서 직접 종류를 지정할 수 있습니다. ## 내보내기와 재생 | 대상 | 출력 | | --- | --- | | **Cubism Editor** | `.cmo3` 모델 프로젝트. 공식 편집기에서 확인하고 다듬기 | | **Cubism 런타임** | `.model3.json` + `.moc3`와 텍스처, 물리, 모션 등 파일 묶음. `.model3.json`에서 불러오기 | | **VTube Studio** | `.moc3` 파일 묶음과 `.vtube.json`. 얼굴 추적을 표준 파라미터에 연결하고 모션마다 단축키 | | **내 프로그램 / 엔진 / 웹** | C / C++, .NET, Unity, Godot, Android용 `.p2lrt` 모델, 또는 브라우저에서 바로 여는 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) 중에서 고릅니다. 나머지는 **파일 → 다른 형식으로 내보내기**에 있습니다. [내보내기 대상](../en/spec/EXPORT_TARGETS.md)(영어)을 참고하세요. > [!IMPORTANT] > 작업을 이어 가려면 `.psd2live` 프로젝트를 저장하세요. 원본 PSD, 소재, 설정, 모든 편집과 히스토리 분기가 들어 있습니다. 내보낼 때 함께 생기는 `.psd2live.json`은 진단 보고서일 뿐입니다. 내보내기에 성공했다고 모든 런타임에서 같은 결과가 나오는 것은 아니므로, 납품 전에 대상 편집기와 실행 환경에서 확인하세요. 지원 범위는 [런타임과 내보내기 경계](../zh/spec/RUNTIME_EXPORT_ARCHITECTURE_AND_GAPS.md)(중국어)를 참고하세요. 내장 렌더러는 공식 SDK 없이 동작합니다. [Cubism 네이티브 미리보기](../en/guide/CUBISM_SDK_SETUP.md)(영어)는 선택 사항으로, 공식 런타임의 렌더링과 물리를 비교할 때 사용합니다. ## p2lrt 런타임 [`runtime/`](../../runtime/)은 내보낸 `.p2lrt` 모델을 재생하는 오픈 소스(MIT) Rust 런타임입니다. 편집기의 소프트웨어 미리보기도 같은 라이브러리로 평가합니다. | 항목 | 설명 | | --- | --- | | **핵심 평가** | Cubism과 동등한 Warp / Rotation 변형, 블렌드 셰이프, Glue, 파츠와 그리기 순서, 불투명도와 색 채널. 편집기의 평가와 포즈 단위로 일치 | | **물리와 모션** | physics3.json 의미를 따르는 진자 물리(바람과 안정화 포함). 최대 16개 모션 레이어를 우선순위로 겹치고 이벤트와 파츠 / 전체 불투명도 커브를 지원하며, 페이드는 Cubism과 동일. 여러 표정 동시 적용 | | **절차적 동작** | 눈 깜빡임, 호흡, 시선 추적, 립싱크(오디오로 구동 가능). 호스트 레이어로 모션 위에 외부 파라미터(얼굴 추적 등)를 겹칠 수 있음 | | **고급 확장** | 선택적으로 활성화: 관절 런타임 스키닝, 정확한 링크, XPBD 실시간 천·머리카락과 충돌. 끄면 결과가 핵심 평가와 비트 단위로 일치 | | **렌더링** | 헤더의 그리기 규칙대로 호스트가 직접 그리거나, 내장 소프트웨어 렌더러 `p2l_render`로 RGBA 이미지에 바로 그림: 모든 색 / 알파 블렌드 모드, 마스크, 분리 그룹, 컬링을 편집기의 기준 래스터라이저와 같은 규칙으로 처리. 메시별 변경 플래그로 바뀐 부분만 업로드 가능 | | **호스트 연동** | 읽기 전용 모델 하나를 여러 인스턴스가 공유. 단계별 업데이트, 파츠 불투명도와 색 재정의, 히트 영역, 로그, 호스트 메모리 할당자. 내부 오류는 해당 핸들만 무효화하고 호스트를 중단시키지 않음 | | **파일 형식** | `.p2lrt` 2.0: 청크 컨테이너로, 핵심 청크는 moc3와 일대일로 대응하고 확장 청크는 선택 사항. deflate / zstd 압축 지원, 같은 IR에서는 바이트 단위로 동일한 출력 | | **연동 방식** | C / C++ 헤더 [`p2l_runtime.h`](../../runtime/include/p2l_runtime.h)와 동적 / 정적 라이브러리(Unreal에서도 사용 가능), .NET P/Invoke 바인딩과 Unity 컴포넌트 예제, Android(arm64-v8a, armeabi-v7a, x86_64), WebAssembly 웹 플레이어, Godot 4 노드 `P2LCharacter`([`runtime/godot/`](../../runtime/godot/)). [다른 언어와 플랫폼](../../runtime/bindings/README.md)(영어) 참고 |
브라우저에서 예제 캐릭터를 재생하는 웹 플레이어. 아래에 모션, 표정, 입 조작
웹 플레이어(WebAssembly + WebGL)
Godot 4의 P2LCharacter 노드에 표시한 예제 캐릭터
Godot 4 노드
형식과 평가 규칙은 [런타임](../en/spec/RUNTIME.md)과 [`.p2lrt` 2.0 형식](../en/spec/P2LRT_V2.md)(영어)을 참고하세요. ## 에이전트 연결(MCP) 1. MCP 서버는 기본으로 켜져 있으며 PSD2Live와 함께 `http://127.0.0.1:23871/mcp`에서 시작합니다. **설정 → MCP**(제목 표시줄 오른쪽의 톱니바퀴)에서 끄거나 포트, 액세스 토큰, 공개할 도구 세트(기본값은 간소화)를 설정할 수 있습니다. 액세스 토큰은 로컬 사용자 설정(Java Preferences)에 평문으로 저장됩니다. 2. 사용하는 호스트(Claude Code, Codex, 일반 JSON)에 맞는 명령이나 설정을 복사합니다. Stdio만 지원하는 호스트는 저장소 루트의 [`mcp_proxy.py`](../../mcp_proxy.py)를 사용합니다. 3. 에이전트가 먼저 `workspace_overview`로 프로젝트 개요를, `workspace_inspect`로 개별 객체를 읽게 합니다. 도구로 나열되지 않은 작업은 `workspace_list_operations`로 찾아 `workspace_call`로 호출합니다. 여러 편집은 `workspace_apply_edits`로 원자적으로 커밋하거나(모두 성공하거나 모두 적용되지 않음), `workspace_preview_edits`로 먼저 시험 실행할 수 있습니다. 인터페이스 설명과 호출 예시는 [MCP 사용법과 인터페이스](../en/agent/MCP_AUTHORING.md)(영어)를 참고하세요. > [!NOTE] > MCP 자체는 이미지를 생성하지 않으므로, 새 소재를 추가하려면 호스트에 이미지 생성 기능이 있어야 합니다. 도구를 호출할 수 있다고 복잡한 모델링 작업이 안정적으로 수행되는 것은 아니며, [실측 기록](../zh/STATUS.md)(중국어)에 실제 작업의 성공과 실패 사례가 정리되어 있습니다. ## 소스에서 빌드 JDK 21이 필요하며 Gradle은 저장소에 포함된 Wrapper를 사용합니다. Rust(cargo, rustc 1.87 이상)가 설치되어 있으면 Rust 런타임도 함께 빌드합니다. cargo가 없거나 rustc가 오래되었으면 Linux에서는 먼저 같은 `runtime/` 소스로 CI가 빌드한 라이브러리를 내려받습니다(`-Ppsd2live.prebuiltRuntime=false`로 끌 수 있음). 받을 수 없으면 알림을 표시하고 건너뛰며 편집기는 내장 평가기를 사용합니다(`rustup update` 후 빌드할 수 있습니다). ```bash # 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 옵션, 패키징, 네이티브 미리보기 빌드는 [개발과 명령줄](../en/guide/DEVELOPMENT.md)(영어)을 참고하세요. ## 문서 | 시작하기 | 리깅과 모션 | 참고 | | --- | --- | --- | | [사용자 가이드](../en/guide/USER_GUIDE.md) | [뼈대와 포즈](../en/guide/SKELETON.md) | [PSD 소재와 명명 규칙](../en/spec/PSD_LAYER_SPEC.md) | | [캔버스 편집](../en/guide/CANVAS_EDITOR.md) | [흔들림 생성](../en/guide/SWING.md) | [디포머와 파라미터](../en/spec/DEFORMER_AND_PARAMETER_SPEC.md) | | [소재와 Layout](../en/guide/LAYOUT.md) | [물리](../en/guide/PHYSICS.md) | [Layout 매니페스트](../en/spec/LAYOUT_MANIFEST.md) | | [앞뒤 레이어 분리](../en/guide/DEPTH_SPLIT.md) | [시뮬레이션과 베이크](../en/guide/SIMULATION.md) | [내보내기 대상](../en/spec/EXPORT_TARGETS.md) | | [텍스처 고해상도화](../en/guide/TEXTURE_UPSCALE.md) | [시뮬레이션 튜토리얼](../en/guide/SIMULATION_TUTORIAL.md) | [런타임](../en/spec/RUNTIME.md) | | [변형 경로](../en/guide/DEFORM_PATHS.md) | [MCP 사용법과 인터페이스](../en/agent/MCP_AUTHORING.md) | [`.p2lrt` 2.0 형식](../en/spec/P2LRT_V2.md) | | [개발과 명령줄](../en/guide/DEVELOPMENT.md) · [Cubism 네이티브 미리보기](../en/guide/CUBISM_SDK_SETUP.md) · [CI와 릴리스](../en/guide/CUBISM_CI_RELEASE.md) | | [프로젝트 형식](../en/spec/PROJECT_FORMAT.md) · [구현 개요](../en/spec/IMPLEMENTATION_COMPARISON.md) | 위 문서는 영어판으로 연결됩니다. 중국어로만 제공되는 내부 구현 문서를 포함한 전체 목록은 [문서 목록](../README.md)에서 확인할 수 있습니다. 예제 PSD와 출력 결과는 [examples](../../examples/readme.md)에, 향후 계획은 [로드맵](../zh/ROADMAP.md)(중국어)에 있습니다. ## 기여하기 Issue, 재현 가능한 PSD, 문서 수정, 코드 개선 모두 환영합니다. - **문제 보고**: 버전, 운영체제, 재현 단계, 기대한 결과와 실제 결과, 로그 패널의 관련 기록을 함께 첨부해 주세요. - **코드 제출**: 변경과 관련된 테스트(`./gradlew test`)를 먼저 실행하세요. 새로운 편집 기능은 프로젝트에 저장되고 다시 열었을 때 재생될 수 있어야 합니다. [개발과 명령줄](../en/guide/DEVELOPMENT.md)(영어)을 참고하세요. - **에이전트 사례**: 호스트, 모델, 재작업 횟수와 비용도 함께 기록해 주세요. 형식은 [실측 기록](../zh/STATUS.md)(중국어)을 참고하세요. ## 라이선스 | 부분 | 라이선스 | | --- | --- | | 애플리케이션 본체, 엔진 `umamo`, Cubism 및 PSD 내보내기 대상 | [GPL-3.0](../../LICENSE) | | 중립 리그 IR `format-model`, 내보내기 프레임워크 `format-compile`, 나머지 내보내기 대상, Rust 런타임 `runtime/` | MIT(단독 재사용 가능) | 애플리케이션 전체는 GPL-3.0으로 배포됩니다. 각 모듈의 `LICENSE`와 [모듈 표](../en/spec/EXPORT_TARGETS.md#modules)(영어)를 참고하세요. 서드파티 구성 요소는 [THIRD_PARTY_NOTICES.md](../../THIRD_PARTY_NOTICES.md)에, 예제 소재의 이용 조건은 각각의 설명에 있습니다. PSD2Live는 독립 프로젝트이며 Live2D Inc.와 제휴하거나 후원을 받는 관계가 아닙니다. 이 저장소는 Live2D Cubism SDK의 독점 구성 요소를 포함하거나 배포하지 않습니다. Live2D와 Cubism은 Live2D Inc.의 상표입니다.