# ComfyUI 노드

ComfyUI-Tripo는 Tripo의 공식 ComfyUI 커스텀 노드 확장입니다. 텍스트, 이미지 또는 멀티뷰 이미지를 이용한 3D 생성을 ComfyUI 워크플로에 통합하며, 모델 가져오기, 텍스처링, 정제, 메시 처리, 로우 폴리 최적화, 스타일 변환, 리깅, 애니메이션 리타게팅, 형식 변환 및 리토폴로지도 지원합니다.

| 항목 | 값 |
| --- | --- |
| Node 프로젝트 버전 | <code>1.3.0</code> |
| 소스 태그 | <code>v1.3.1.1</code> |
| 저장소 | [VAST-AI-Research/ComfyUI-Tripo](https://github.com/VAST-AI-Research/ComfyUI-Tripo) |

## 기능 및 변경 기록

### 기능

- 텍스트로 3D 모델을 생성합니다.
- 이미지로 3D 모델을 생성합니다.
- <code>model_url</code>을 사용해 URL에서 모델을 가져옵니다.
- 모델 파트 분리를 지원합니다.
- 3D 모델을 리깅하고 애니메이션을 적용합니다.
- 형식을 변환하고 모델을 리토폴로지합니다.

### 변경 기록

- 2026-06-30: 모델 파츠 분리를 위한 Mesh Segmentation v2.0과 <code>model_url</code> 직접 URL 가져오기를 추가했습니다.
- 2026-05-28: 모델 가져오기를 추가했습니다.
- 2025-06-19: 최신 API로 업데이트하고 노드를 추가했습니다.
- 2025-03-31: <code>tripo3d</code> 패키지로 전환했습니다.
- 2025-02-24: <code>glbviewer</code>를 제거했습니다.
- 2025-02-01: 새 API에 대응하고 모델 보기에 Preview 3D를 사용했습니다.
- 2024-11-11: 새 API에 대응했습니다.
- 2024-10-14: 모델 변환을 추가했습니다.
- 2024-09-13: <code>model_version</code> <code>v2.0-20240919</code>를 지원했습니다.

## 설치

공식 도구: [ComfyUI-Manager](https://github.com/ltdrdata/ComfyUI-Manager), [Comfy Registry](https://registry.comfy.org/), [comfy-cli](https://github.com/Comfy-Org/comfy-cli).

**한 가지 방법을 선택해** 설치한 뒤 ComfyUI를 다시 시작하세요.

1. **ComfyUI-Manager:** Custom Nodes Manager에서 <code>Tripo for ComfyUI</code>를 검색해 설치합니다.
2. **comfy-cli:**

~~~bash
comfy node registry-install comfyui-tripo
~~~

3. **소스에서 설치:**

~~~bash
cd ComfyUI/custom_nodes
git clone https://github.com/VAST-AI-Research/ComfyUI-Tripo.git
python -m pip install -r ComfyUI-Tripo/requirements.txt
~~~

## API Key 설정

먼저 [Tripo 플랫폼](https://platform.tripo3d.ai/)에서 API Key를 만든 다음 아래 방법 중 하나로 설정하세요.

API Key는 다음 순서로 결정됩니다.

1. 노드의 비어 있지 않은 <code>apikey</code> 입력.
2. <code>TRIPO_API_KEY</code> 환경 변수.
3. 프로젝트 디렉터리 <code>config.json</code>의 <code>TRIPO_API_KEY</code> 필드.

Generate와 Import는 <code>apikey</code>를 제공하고, 후속 노드는 결정된 Key를 <code>MODEL_INFO</code>로 받습니다. 실제 Key를 스크린샷, workflow, 로그 또는 저장소에 노출하지 마세요.

### 환경 변수 실행 예시

Windows:

~~~shell
set TRIPO_API_KEY=tsk_XXXXXXX
python.exe main.py [--cpu]
~~~

Linux 또는 macOS:

~~~bash
TRIPO_API_KEY=tsk_XXXXXXX python main.py [--cpu]
~~~

## 노드 개요

ComfyUI-Tripo는 다음 11개의 Tripo 노드를 제공합니다.

| 내부 ID | 표시 이름 | 기능 | 출력 |
| --- | --- | --- | --- |
| <code>TripoAPIDraft</code> | Tripo: Generate model | 텍스트, 이미지 또는 멀티뷰로 모델을 생성합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoImportModel</code> | Tripo: Import model | 로컬 모델 또는 URL을 가져옵니다. | <code>MODEL_INFO</code> |
| <code>TripoTextureModel</code> | Tripo: Texture model | 모델에 텍스처를 생성합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoRefineModel</code> | Tripo: Refine Draft model | 호환 초안 모델을 정제합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoMeshSegmentation</code> | Tripo: Segment mesh | 메시를 분할합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoMeshCompletion</code> | Tripo: Complete mesh | 분할된 메시를 보완합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoSmartLowPoly</code> | Tripo: Smart low poly | 로우 폴리 모델을 생성합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoStylizeModel</code> | Tripo: Stylize model | 기하학 스타일을 적용합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoAnimateRigNode</code> | Tripo: Rig model | 모델을 자동 리깅합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoAnimateRetargetNode</code> | Tripo: Retarget rigged model | 프리셋 애니메이션을 적용합니다. | STRING <code>model_file</code> + <code>MODEL_INFO</code> |
| <code>TripoConvertNode</code> | Tripo: Convert model | 모델을 변환하고 내보냅니다. | STRING <code>model_file</code> |

Preview 3D는 ComfyUI 노드이며 11개 Tripo 노드에 포함되지 않습니다.

## 연결과 데이터 흐름

~~~mermaid
flowchart LR
    G["Generate model"] -->|MODEL_INFO| P["모델 처리"]
    I["Import model"] -->|MODEL_INFO| P
    P -->|MODEL_INFO| R["Rig model"]
    R -->|MODEL_INFO| A["Retarget rigged model"]
    A -->|MODEL_INFO| C["Convert model"]
~~~

- <code>model_file</code>은 미리보기나 파일 처리에 쓰는 다운로드된 파일 경로입니다.
- <code>MODEL_INFO</code>에는 <code>task_id</code>, 결정된 <code>apikey</code>, <code>file_prefix</code>, <code>output_directory</code>가 들어 있습니다.
- 외부 모델은 먼저 <code>TripoImportModel</code>을 거쳐야 하며 파일 경로만으로 <code>MODEL_INFO</code>를 대체할 수 없습니다.
- Tripo 처리를 계속하려면 <code>MODEL_INFO</code>를 연결하세요.

## 전체 노드 파라미터

‘필수’는 노드 정의에서 필수로 지정된 입력을 나타냅니다. 빈 <code>apikey</code>는 환경 변수나 설정으로 대체될 수 있습니다. ‘—’는 명시적인 기본값이 없음을 나타냅니다.

### 생성 및 가져오기

### TripoAPIDraft — Tripo: Generate model

텍스트, 이미지 또는 멀티뷰로 모델을 생성합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>mode</code> | ENUM | 예 | 첫 번째 값 | <code>text_to_model</code>, <code>image_to_model</code>, <code>multiview_to_model</code> |
| <code>apikey</code> | STRING | 예 | 빈 값 | API key 또는 대체 설정 |
| <code>prompt</code> | STRING multiline | 아니요 | 빈 값 | <code>text_to_model</code> |
| <code>negative_prompt</code> | STRING multiline | 아니요 | 빈 값 | — |
| <code>image</code> | IMAGE | 아니요 | — | <code>image_to_model</code> 소스; <code>multiview_to_model</code> 정면 이미지 |
| <code>image_left</code> | IMAGE | 아니요 | — | <code>multiview_to_model</code> |
| <code>image_back</code> | IMAGE | 아니요 | — | <code>multiview_to_model</code> |
| <code>image_right</code> | IMAGE | 아니요 | — | <code>multiview_to_model</code> |
| <code>model_version</code> | ENUM | 아니요 | <code>v3.1-20260211</code> | <code>v1.4-20240625</code>, <code>v2.0-20240919</code>, <code>v2.5-20250123</code>, <code>v3.0-20250812</code>, <code>v3.1-20260211</code> |
| <code>texture</code> | BOOLEAN | 아니요 | <code>true</code> | — |
| <code>pbr</code> | BOOLEAN | 아니요 | <code>true</code> | — |
| <code>image_seed</code> | INT | 아니요 | <code>42</code> | <code>text_to_model</code> |
| <code>model_seed</code> | INT | 아니요 | <code>42</code> | — |
| <code>texture_seed</code> | INT | 아니요 | <code>42</code> | — |
| <code>texture_quality</code> | ENUM | 아니요 | <code>standard</code> | <code>standard</code>, <code>detailed</code> |
| <code>geometry_quality</code> | ENUM | 아니요 | <code>standard</code> | <code>standard</code>, <code>detailed</code>; <code>image_to_model</code> |
| <code>texture_alignment</code> | ENUM | 아니요 | <code>original_image</code> | <code>original_image</code>, <code>geometry</code> |
| <code>face_limit</code> | INT | 아니요 | <code>-1</code> | <code>-1</code>–<code>500000</code>; ≤ 0은 미설정으로 처리 |
| <code>quad</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>compress</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>generate_parts</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>smart_low_poly</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>auto_size</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>orientation</code> | ENUM | 아니요 | <code>default</code> | <code>default</code>, <code>align_image</code>; 이미지/multiview 모드 |
| <code>file_prefix</code> | STRING | 아니요 | 빈 값 | — |
| <code>output_directory</code> | STRING | 아니요 | 빈 값 | — |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** 없음. **주요 실패 조건:** 조건 입력/Key 누락, API 작업 또는 출력 이동 실패. **최소 연결:** 텍스트/이미지 → <code>TripoAPIDraft</code> → Preview 3D.

세 가지 모드의 조건부 필수 입력은 다음과 같습니다.

| <code>mode</code> | 조건부 필수 | 설명 |
| --- | --- | --- |
| <code>text_to_model</code> | <code>prompt</code> | <code>prompt</code>는 비울 수 없습니다. |
| <code>image_to_model</code> | <code>image</code> | <code>image</code>가 필요합니다. |
| <code>multiview_to_model</code> | <code>image</code> | <code>image</code>는 정면이며 왼쪽, 뒤, 오른쪽은 선택 사항입니다. |

### TripoImportModel — Tripo: Import model

로컬 모델 또는 URL을 가져옵니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>apikey</code> | STRING | 예 | 빈 값 | API key 또는 대체 설정 |
| <code>model_file</code> | file selector | 아니요 | <code>none</code> | ComfyUI input 디렉터리 |
| <code>model_url</code> | STRING | 아니요 | 빈 값 | 직접 URL |
| <code>file_prefix</code> | STRING | 아니요 | 빈 값 | 후속 노드로 전달 |
| <code>output_directory</code> | STRING | 아니요 | 빈 값 | 후속 노드로 전달 |

**출력:** <code>MODEL_INFO</code>. **선행 조건:** 로컬 파일 또는 URL. **주요 실패 조건:** 소스 누락/접근 불가, 형식 거부 또는 import 실패. **최소 연결:** 로컬 파일 또는 URL → <code>TripoImportModel</code> → MODEL_INFO.

비어 있지 않은 <code>model_url</code>이 <code>model_file</code>보다 우선합니다. 둘 다 없으면 실패합니다. 업로드는 <code>.glb</code>, <code>.fbx</code>, <code>.obj</code>, <code>.stl</code>, <code>.ply</code>, <code>.3mf</code>, <code>.gltf</code>를 받고 백엔드는 <code>.zip</code>도 인식합니다.

### 모델 처리

### TripoTextureModel — Tripo: Texture model

모델에 텍스처를 생성합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 상위 작업 컨텍스트 |
| <code>model_version</code> | ENUM | 아니요 | <code>v3.0-20250812</code> | <code>v2.5-20250123</code>, <code>v3.0-20250812</code> |
| <code>texture</code> | BOOLEAN | 아니요 | <code>true</code> | — |
| <code>pbr</code> | BOOLEAN | 아니요 | <code>true</code> | — |
| <code>texture_seed</code> | INT | 아니요 | <code>42</code> | — |
| <code>texture_quality</code> | ENUM | 아니요 | <code>standard</code> | <code>standard</code>, <code>detailed</code> |
| <code>texture_alignment</code> | ENUM | 아니요 | <code>original_image</code> | <code>original_image</code>, <code>geometry</code> |
| <code>text_prompt</code> | STRING multiline | 아니요 | 빈 값 | — |
| <code>image_prompt</code> | IMAGE | 아니요 | — | — |
| <code>style_image</code> | IMAGE | 아니요 | — | — |
| <code>part_names</code> | STRING multiline | 아니요 | 빈 값 | 한 줄에 한 파트 이름 |
| <code>compress</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>bake</code> | BOOLEAN | 아니요 | <code>true</code> | — |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** Generate / Import MODEL_INFO. **주요 실패 조건:** 호환되지 않는 컨텍스트, 잘못된 이미지 또는 API 실패. **최소 연결:** Generate / Import → <code>TripoTextureModel</code> → Preview 3D.

### TripoRefineModel — Tripo: Refine Draft model

호환 초안 모델을 정제합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 초안 컨텍스트 |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** 정제 가능한 초안 MODEL_INFO. **주요 실패 조건:** 정제 불가 초안 또는 API 실패. **최소 연결:** Generate draft → <code>TripoRefineModel</code> → Preview 3D.

### TripoMeshSegmentation — Tripo: Segment mesh

메시를 분할합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 상위 작업 컨텍스트 |
| <code>model_version</code> | ENUM | 예 | <code>v1.0-20250506</code> | <code>v1.0-20250506</code>, <code>v2.0-20260430</code> |
| <code>segmentation_granularity</code> | ENUM | 아니요 | <code>balanced</code> | <code>simple</code>, <code>balanced</code>, <code>detailed</code>; v2 only |
| <code>ref_image</code> | IMAGE | 아니요 | — | v2 전용 |
| <code>split_by_connectivity</code> | BOOLEAN | 아니요 | <code>true</code> | v2 전용 |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** Generate / Import MODEL_INFO. **주요 실패 조건:** 호환되지 않는 모델/참조 이미지 또는 API 실패. **최소 연결:** Generate / Import → <code>TripoMeshSegmentation</code> → Completion / Preview.

<code>segmentation_granularity</code>, <code>ref_image</code>, <code>split_by_connectivity</code>는 <code>v2.0-20260430</code>에서만 전달되며 v1에서는 무시됩니다.

### TripoMeshCompletion — Tripo: Complete mesh

분할된 메시를 보완합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 분할 컨텍스트 |
| <code>model_version</code> | ENUM | 예 | <code>v1.0-20250506</code> | <code>v1.0-20250506</code> |
| <code>part_names</code> | STRING multiline | 아니요 | 빈 값 | 한 줄에 한 파트 이름 |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** 분할된 MODEL_INFO. **주요 실패 조건:** 보완에 부적합한 작업 또는 API 실패. **최소 연결:** Segment → <code>TripoMeshCompletion</code> → Preview 3D.

### TripoSmartLowPoly — Tripo: Smart low poly

로우 폴리 모델을 생성합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 상위 작업 컨텍스트 |
| <code>model_version</code> | ENUM | 예 | <code>P-v2.0-20251225</code> | <code>P-v2.0-20251225</code> |
| <code>quad</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>part_names</code> | STRING multiline | 아니요 | 빈 값 | 한 줄에 한 파트 이름 |
| <code>face_limit</code> | INT | 아니요 | <code>10000</code> | <code>-1</code>–<code>20000</code> |
| <code>bake</code> | BOOLEAN | 아니요 | <code>true</code> | — |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** Generate / Import MODEL_INFO. **주요 실패 조건:** 호환되지 않는 모델/파트 또는 API 실패. **최소 연결:** Generate / Import → <code>TripoSmartLowPoly</code> → Preview / Convert.

### TripoStylizeModel — Tripo: Stylize model

기하학 스타일을 적용합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 상위 작업 컨텍스트 |
| <code>style</code> | ENUM | 예 | 첫 번째 값 | <code>lego</code>, <code>voxel</code>, <code>voronoi</code>, <code>minecraft</code> |
| <code>block_size</code> | INT | 예 | <code>80</code> | <code>1</code>–<code>1000</code> |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** Generate / Import MODEL_INFO. **주요 실패 조건:** 호환되지 않는 모델/스타일 또는 API 실패. **최소 연결:** Generate / Import → <code>TripoStylizeModel</code> → Preview 3D.

### 리깅 및 애니메이션

### TripoAnimateRigNode — Tripo: Rig model

모델을 자동 리깅합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 상위 작업 컨텍스트 |
| <code>model_version</code> | ENUM | 예 | <code>v2.0-20250506</code> | <code>v1.0-20240301</code>, <code>v2.0-20250506</code> |
| <code>out_format</code> | ENUM | 예 | <code>glb</code> | <code>glb</code>, <code>fbx</code> |
| <code>spec</code> | ENUM | 예 | <code>tripo</code> | <code>mixamo</code>, <code>tripo</code> |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** Generate / Import MODEL_INFO. **주요 실패 조건:** 리깅 불가, rig type 없음 또는 API 실패. **최소 연결:** Generate / Import → <code>TripoAnimateRigNode</code> → Retarget / Preview.

리깅 전에 노드가 가능 여부를 확인하고 rig type을 가져옵니다.

### TripoAnimateRetargetNode — Tripo: Retarget rigged model

프리셋 애니메이션을 적용합니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 리깅 컨텍스트 |
| <code>animation</code> | ENUM | 예 | 첫 번째 값 | 아래 16개 preset |
| <code>out_format</code> | ENUM | 예 | <code>glb</code> | <code>glb</code>, <code>fbx</code> |
| <code>bake_animation</code> | BOOLEAN | 아니요 | <code>true</code> | — |
| <code>export_with_geometry</code> | BOOLEAN | 아니요 | <code>false</code> | — |

**출력:** STRING <code>model_file</code> + <code>MODEL_INFO</code>. **선행 조건:** 리깅된 MODEL_INFO. **주요 실패 조건:** 리깅되지 않은 컨텍스트 또는 API 실패. **최소 연결:** Rig → <code>TripoAnimateRetargetNode</code> → Preview / Convert.

16개 애니메이션 값: <code>preset:idle</code>, <code>preset:walk</code>, <code>preset:run</code>, <code>preset:dive</code>, <code>preset:climb</code>, <code>preset:jump</code>, <code>preset:slash</code>, <code>preset:shoot</code>, <code>preset:hurt</code>, <code>preset:fall</code>, <code>preset:turn</code>, <code>preset:quadruped:walk</code>, <code>preset:hexapod:walk</code>, <code>preset:octopod:walk</code>, <code>preset:serpentine:march</code>, <code>preset:aquatic:march</code>.

### 형식 출력

### TripoConvertNode — Tripo: Convert model

모델을 변환하고 내보냅니다.

| 입력 | 타입 | 필수 | 기본값 | 값 / 범위 |
| --- | --- | --- | --- | --- |
| <code>model_info</code> | MODEL_INFO | 예 | — | 상위 작업 컨텍스트 |
| <code>format</code> | ENUM | 예 | 첫 번째 값 | <code>GLTF</code>, <code>USDZ</code>, <code>FBX</code>, <code>OBJ</code>, <code>STL</code>, <code>3MF</code> |
| <code>quad</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>force_symmetry</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>face_limit</code> | INT | 아니요 | <code>-1</code> | <code>-1</code>–<code>500000</code> |
| <code>flatten_bottom</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>flatten_bottom_threshold</code> | FLOAT | 아니요 | <code>0.01</code> | <code>0.0</code>–<code>1.0</code> |
| <code>texture_size</code> | INT | 아니요 | <code>4096</code> | <code>128</code>–<code>4096</code> |
| <code>texture_format</code> | ENUM | 아니요 | <code>JPEG</code> | <code>BMP</code>, <code>DPX</code>, <code>HDR</code>, <code>JPEG</code>, <code>OPEN_EXR</code>, <code>PNG</code>, <code>TARGA</code>, <code>TIFF</code>, <code>WEBP</code> |
| <code>pivot_to_center_bottom</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>scale_factor</code> | FLOAT | 아니요 | <code>1.0</code> | 최소 <code>0</code> |
| <code>with_animation</code> | BOOLEAN | 아니요 | <code>true</code> | — |
| <code>pack_uv</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>bake</code> | BOOLEAN | 아니요 | <code>true</code> | — |
| <code>part_names</code> | STRING multiline | 아니요 | 빈 값 | 한 줄에 한 파트 이름 |
| <code>fbx_preset</code> | ENUM | 아니요 | <code>blender</code> | <code>blender</code>, <code>mixamo</code>, <code>3dsmax</code> |
| <code>export_vertex_colors</code> | BOOLEAN | 아니요 | <code>false</code> | — |
| <code>export_orientation</code> | ENUM | 아니요 | <code>+x</code> | <code>+x</code>, <code>+y</code>, <code>-x</code>, <code>-y</code> |
| <code>animate_in_place</code> | BOOLEAN | 아니요 | <code>false</code> | — |

**출력:** STRING <code>model_file</code>. **선행 조건:** 호환 MODEL_INFO. **주요 실패 조건:** 지원하지 않는 변환, 잘못된 설정 또는 출력 실패. **최소 연결:** MODEL_INFO → <code>TripoConvertNode</code>.

Convert는 출력 노드이며 <code>MODEL_INFO</code>를 반환하지 않습니다.

## workflow 예시

Preview 3D는 선택적인 ComfyUI 뷰어입니다.

~~~mermaid
flowchart LR
    T["텍스트"] --> GT["Generate model<br/>mode: text_to_model"]
    IM["이미지"] --> GI["Generate model<br/>mode: image_to_model"]
    MV["정면 + 선택 뷰"] --> GM["Generate model<br/>mode: multiview_to_model"]
    GT --> V["Preview 3D"]
    GI --> V
    GM --> V
~~~

1. **Text to Model:** <code>prompt</code> → <code>text_to_model</code> Generate → Preview 3D.
2. **Image to Model:** IMAGE → <code>image</code>, <code>image_to_model</code> → Preview 3D.
3. **Multiview to Model:** 정면은 <code>image</code>, 선택 뷰는 <code>image_left</code>, <code>image_back</code>, <code>image_right</code>.
4. **Texture Model:** Generate/Import → MODEL_INFO → Texture → Preview.
5. **Refine Model:** 호환 초안 → MODEL_INFO → Refine → Preview.
6. **Rig and Retarget:** Generate/Import → Rig → Retarget. MODEL_INFO로 연결합니다.
7. **Import and Process:** 파일/URL → Import → Segment/Smart low poly/Stylize/Texture.
8. **Convert and Export:** 최종 MODEL_INFO → Convert → 형식 선택.

### 공식 workflow PNG

다음 6개 PNG에는 ComfyUI workflow 데이터가 포함되어 있습니다. 다운로드 링크로 원본을 저장한 뒤 ComfyUI로 끌어오거나 직접 불러오세요. 이미지에 표시된 파라미터 값은 예시이며 현재 기본값은 파라미터 표를 따릅니다.

#### Text to Mesh

![Tripo Generate model과 Preview 3D를 연결한 텍스트-메시 workflow](/assets/images/docs/comfyui-nodes/text_to_model.png)

텍스트로 모델을 생성하고 <code>model_file</code>을 Preview 3D로 보냅니다.

<a href="/assets/images/docs/comfyui-nodes/text_to_model.png" download>원본 workflow PNG 다운로드</a>

#### Image to Mesh

![Load Image, Tripo Generate model, Preview 3D를 연결한 이미지-메시 workflow](/assets/images/docs/comfyui-nodes/image_to_model.png)

이미지를 불러와 <code>image_to_model</code> 모드의 Generate model에 연결하고 결과를 미리 봅니다.

<a href="/assets/images/docs/comfyui-nodes/image_to_model.png" download>원본 workflow PNG 다운로드</a>

#### Multiview Images to Mesh

![Load Image 세 개, Tripo Generate model, Preview 3D를 연결한 멀티뷰 workflow](/assets/images/docs/comfyui-nodes/multiview_to_model.png)

정면 이미지와 선택적 측면 이미지를 <code>multiview_to_model</code> 모드의 Generate model에 연결합니다.

<a href="/assets/images/docs/comfyui-nodes/multiview_to_model.png" download>원본 workflow PNG 다운로드</a>

#### Texture a generated model

![Generate model, Texture model, Preview 3D를 연결한 텍스처 workflow](/assets/images/docs/comfyui-nodes/texture_model.png)

Generate model의 <code>MODEL_INFO</code>를 Texture model로 전달하고 두 출력을 미리 봅니다.

<a href="/assets/images/docs/comfyui-nodes/texture_model.png" download>원본 workflow PNG 다운로드</a>

#### Refine a draft Mesh

![Generate model, Refine Draft model, Preview 3D를 연결한 refine workflow](/assets/images/docs/comfyui-nodes/refine_model.png)

호환 초안을 생성하고 <code>MODEL_INFO</code>를 Refine Draft model로 전달해 결과를 미리 봅니다.

<a href="/assets/images/docs/comfyui-nodes/refine_model.png" download>원본 workflow PNG 다운로드</a>

#### Animation / Rig and export

![Generate model, Rig model, Preview 3D, Convert model을 연결한 리깅 및 내보내기 workflow](/assets/images/docs/comfyui-nodes/retarget.png)

<a href="/assets/images/docs/comfyui-nodes/retarget.png" download>원본 workflow PNG 다운로드</a>

## 출력과 문제 해결

다운로드 기본 경로는 <code>ComfyUI/output</code>입니다. <code>file_prefix</code>는 이름을 바꾸고 <code>output_directory</code>는 파일을 이동하며 둘 다 <code>MODEL_INFO</code>로 전달됩니다.

| 증상 | 확인 |
| --- | --- |
| API Key 누락 | 노드 Key, <code>TRIPO_API_KEY</code> 또는 <code>config.json</code>을 설정합니다. |
| prompt/정면 누락 | mode와 조건부 입력을 확인합니다. |
| Import가 시작되지 않음 | 접근 가능한 URL 또는 기존 파일을 지정합니다. URL 우선입니다. |
| 리깅 불가 | 적합한 캐릭터 모델을 사용합니다. |
| API 작업 실패 | <code>error_code</code>, <code>error_msg</code>, 권한과 잔액을 확인합니다. |
| 출력 이동 실패 | 대상 경로와 쓰기 권한을 확인합니다. |
| 노드가 보이지 않음 | ComfyUI를 다시 시작하고 디렉터리와 <code>requirements.txt</code>를 확인합니다. |
| 업로드 실패 | 확장자와 ComfyUI 업로드 응답을 확인합니다. |
