후처리

텍스처

POST/v1/assets/{id}/texture

기존 3D 자산의 PBR 머티리얼을 텍스트 프롬프트나 참조 이미지로 다시 칠해 새 자산으로 만듭니다.

비동기 id를 반환합니다 — 폴링하거나 웹훅을 사용하세요일반적 ~60–120s비용 엔진마다 다름

경로의 {id}는 원본 모델입니다. 텍스처링은 새 맵을 자산에 기록하며 원본은 그대로 둡니다.

파라미터

파라미터설명
prompt선택
string
새 표면을 설명하는 텍스트, 최대 1,000자. 생략하면 모델 자체를 기준으로 다시 텍스처링합니다.
engine선택
string
사용할 텍스처링 엔진 — 예: tripo-texture, meshy-texture, hunyuan-texture. 생략하면 기본값을 사용합니다. 정식 목록: GET /v1/models?category=texture.
image선택
file
프롬프트 대신, 또는 프롬프트와 함께 텍스처의 기준으로 사용할 멀티파트 참조 이미지(≤20 MB). 아래 이미지 기반을 참고하세요.
license선택
string
결과물의 사용 권한. 기본값은 비공개(모든 권리 보유)입니다.
callbackUrl선택
string
폴링 대신 완성된 자산을 여러분의 서버로 푸시합니다 — 웹훅을 참고하세요.

요청

요청
curl -X POST https://api.picoberry.ai/v1/assets/019…/texture \
  -H "Authorization: Bearer pb_live_xxx" -H "Content-Type: application/json" \
  -d '{"engine":"tripo-texture","prompt":"weathered bronze with green patina"}'
requests.post(f"{BASE}/v1/assets/{id}/texture", headers=headers,
    json={"engine": "tripo-texture", "prompt": "weathered bronze"})
await fetch(`${BASE}/v1/assets/${id}/texture`, { method: "POST",
  headers: { ...headers, "Content-Type": "application/json" },
  body: JSON.stringify({ engine: "tripo-texture", prompt: "weathered bronze" }) });

이미지 기반

prompt를 생략하고 multipart/form-dataimage 파트(≤20 MB)를 보내면 텍스트 대신 참조 이미지로 텍스처링합니다 — 이미지 호스팅이 필요 없습니다.

multipart
curl -X POST https://api.picoberry.ai/v1/assets/019…/texture \
  -H "Authorization: Bearer pb_live_xxx" \
  -F "engine=tripo-texture" -F "image=@./ref.png"

응답

응답 · 200
{ "success": true, "data": { "id": "019…", "taskStatus": 0 } }

taskStatus2가 될 때까지 GET /v1/assets/{id}를 폴링하세요. 완성된 files.model은 다시 텍스처링된 메시이며 files.textures에 새 맵이 담깁니다. 비동기 및 폴링을 참고하세요.

비용은 엔진마다 다릅니다 텍스처링 엔진마다 가격이 다릅니다 — 정확한 비용은 GET /v1/models에 있습니다.