Tripo 3D asset generation
Tripo (product of VAST AI Research; consumer brand "Tripo AI") turns text, single images, and multi-view
image sets into textured 3D meshes, then post-processes them into engine-ready assets: PBR texturing,
retopology, auto-rigging, preset animation, and format conversion. It ships as a web Studio, mobile apps,
and an async task-based REST API ("Tripo OpenAPI"). This skill is about producing production-usable
assets through that API and Studio.
Evidence labels used below: [Doc] = official Tripo documentation/SDK; [1P] = first-party
Tripo blog/marketing claim (directional, not independently verified); [3P] = disclosed third-party
source; [Heuristic] = production judgment, not a documented guarantee. Volatile facts carry a
verified 2026-07-10 date; re-check them, because Tripo ships model and pricing changes frequently.
When to use Tripo, and when not to
Tripo's strength is speed and coverage: a usable single-object mesh in tens of seconds to a couple of
minutes, across a huge range of props, characters, and hard-surface objects, with texturing/rigging/format
export in one API. [Heuristic] Reach for it when you need many game/AR/previz/3D-print assets fast, when
you have a concept image or clean reference, or when you want a first-pass base mesh to refine by hand.
Do not rely on Tripo (or set expectations accordingly) for:
- Clean production topology out of the box. Raw generation output is typically dense, organic
triangulation. Use quad remesh, smart low-poly, or retopo in a DCC tool before deforming/subdividing.
[Heuristic]
- Full scenes / multi-object layouts. It generates one object per task. Compose scenes yourself.
- Precise dimensional/CAD accuracy. It is a generative reconstruction, not a measured model. For
3D printing, verify scale, wall thickness, and manifold-ness.
- Guaranteed likeness of real, identifiable people, or reproduction of copyrighted/branded characters.
Treat these as rights risks (see Rights & licensing).
- Text, fine logos, thin lattices, transparent/refractive materials. These are common failure classes.
[Heuristic]
The task model (how the API actually works) — [Doc], verified 2026-07-10
Everything is an asynchronous task. You submit a task, receive a task_id, then poll (or receive a
webhook) until it succeeds, then read output URLs.
- Base URL:
https://api.tripo3d.ai/v2/openapi
- Auth: header
Authorization: Bearer YOUR_API_KEY. Create keys at platform.tripo3d.ai/api-keys.
- Create a task:
POST /v2/openapi/task with a JSON body whose type selects the operation.
- Poll a task:
GET /v2/openapi/task/{task_id}. Response carries status, progress, output
(download URLs), and consumed_credit (exact credits charged for that task).
- Status values:
queued → running → success (also failed, cancelled, banned, expired,
unknown). Poll until terminal; read model URLs from output on success.
- Uploads: input images may be passed as a
url (public JPEG/PNG, max 20 MB), a file_token from
direct upload, or an object from STS upload (bucket: "tripo-data", key: <resource_uri>). STS upload
is Tripo's recommended path. Output download URLs are time-limited — fetch and store them promptly.
- Chaining: post-process tasks reference a prior task by id
(
original_model_task_id / draft_model_task_id), so a model → texture → rig → convert pipeline is a
chain of tasks, not a re-upload each time.
[Heuristic] Poll with backoff (e.g., 2 s, then 3–5 s) rather than tight loops; generation is
seconds-to-minutes depending on model/options. For batch/production, prefer webhooks if your integration
path supports them (native webhook support varies by API surface and by proxy providers such as fal/Runware,
which expose an X-Webhook-URL-style header [3P], verified 2026-07-10; confirm against current Tripo docs
before depending on it, otherwise poll).
Model versions — [Doc]/[1P], verified 2026-07-10
Select with model_version on generation tasks. Volatile — re-check the changelog.
| Family |
API model_version / selector |
Character |
Face/poly envelope |
| v3.0 (HD / "H3") |
v3.0-20250812 |
Stable, general default |
up to ~1M–1.5M tris [Doc] |
| v3.1 (HD / "H3.1") |
v3.1-20260211 |
Higher geometric density, sharper edges, stronger PBR |
up to ~1.5M–2M tris [Doc] |
| P1 (Smart Mesh P1.0) |
p1 selector (premium tier) |
Native 3D-diffusion, game-ready low-poly, orientation control, seeds; very fast |
~48–20,000 faces [Doc/1P] |
- v3.0 — safe general-purpose default when you want maximum detail and will retopo later. [Heuristic]
- v3.1 — pick for "hero" detail: denser geometry and better PBR response; costs more compute/time.
Marketed for hero game assets, cinematics, product shots. [1P]
- P1 — pick when you want engine-ready, controllable low-poly directly: a target face budget
(
face_limit 48–20,000) and orientation control (default or align_image) so the asset faces a
predictable axis. Announced at GDC 2026 as a native-3D-diffusion architecture producing low-poly assets in
seconds. [1P] Costs more credits than v3.x per task. Older Turbo-v1.0, v1.4, and H2 versions also
exist for legacy/cheaper paths. [Doc]
The marketing "Hxx" names and the API model_version strings are not identical spellings — always drive the
API off the exact model_version string from the current docs, not the blog name.
Generation tasks and their parameters — [Doc], verified 2026-07-10
text_to_model
type: "text_to_model", model_version, prompt (≤ 1024 chars; multilingual; no emoji/exotic Unicode).
- Optional:
negative_prompt (≤ 255), image_seed, model_seed, texture_seed, style.
image_to_model
type: "image_to_model", model_version, and a file (via file_token | url | object).
enable_image_autofix cleans up the input; texture_alignment and orientation control how texture and
the asset's facing follow the image.
multiview_to_model
type: "multiview_to_model", files = an ordered list [front, left, back, right].
- Front is required; other views may be omitted (pass empty for that slot). Use at least 2 views.
More consistent views → better back/side reconstruction. [Doc]
Shared generation controls
texture (bool, default true; ~10 credits cheaper when false for geometry-only).
pbr (bool, default true) — emit PBR maps (base color / metallic-roughness / normal) for lit pipelines.
texture_quality: "standard" (default) or "detailed" (+10 credits).
geometry_quality: "standard" or "detailed" (+20 credits) on supported versions.
face_limit (int) — cap output triangles; the practical lever for engine budgets.
quad (bool, default false, +5 credits) — quad-dominant remesh for cleaner edge flow / subdivision.
smart_low_poly (bool, default false, +10 credits) — automatic low-poly-ization at generation time.
auto_size (bool) — normalize real-world scale; compress for smaller GLB; export_uv; generate_parts
(+20 credits) to split into named parts; style for stylized geometry presets.
Post-processing pipeline — [Doc], verified 2026-07-10
Each references a prior task id, so you refine without re-generating:
- texture_model — re-texture an existing mesh. Key inputs:
original_model_task_id, texture, pbr,
texture_quality, texture_alignment, texture_seed, part_names, bake, plus a text_prompt,
image_prompt, or style_image to redirect the look.
- refine_model — refine a draft mesh (
draft_model_task_id).
- mesh_segmentation (40 cr) / mesh_completion (50 cr) — split into parts / fill holes and finish
partial geometry.
- smart_lowpoly (30 cr) — retopo high-poly → low-poly with
face_limit, quad, bake, part_names.
- stylize_model — apply a stylization
style: LEGO, VOXEL, VORONOI, MINECRAFT, with block_size.
Rigging & animation — [Doc], verified 2026-07-10
- check_riggable (
type: "check_riggable", free) — validate a mesh can be auto-rigged before paying
to rig. Always gate on this for characters.
- rig_model (25 cr) — auto-rig. Params:
original_model_task_id, out_format ("glb" | "fbx"),
rig_type, spec (skeleton spec, e.g. humanoid). Auto-rigging expects a roughly upright,
symmetric, single-character mesh with clearly separated limbs. [Heuristic]
- retarget_animation (10 cr per animation) — apply preset motions to the rigged mesh.
animation takes one or a list of "preset:<name>" values: preset:idle, preset:walk, preset:run,
preset:jump, preset:climb, preset:dive, preset:fall, preset:turn, preset:slash,
preset:shoot, preset:hurt, plus quadruped/hexapod/octopod/serpentine/aquatic variants for non-humanoids.
out_format, bake_animation, and export_with_geometry control the exported clip.
Format conversion / export — [Doc], verified 2026-07-10
- convert_model —
original_model_task_id + format ∈ GLTF, USDZ, FBX, OBJ, STL, 3MF
(base 5 cr, +5 with extra options). Native generation output is GLB; convert to your target.
- Engine/tool mapping [Heuristic]: Unity/Unreal → FBX or glTF/GLB; Blender → GLB/glTF or
FBX; USD pipelines / Apple AR Quick Look → USDZ; 3D printing → STL or 3MF (STL drops
color; 3MF keeps color/material).
Prompt and input-image strategy — [Heuristic] unless marked
Text-to-3D prompts describe an object, not a scene: subject + form + material + style. Be concrete
about silhouette and material ("a low-poly stylized wooden treasure chest with iron bands, closed lid").
Use negative_prompt to suppress recurring artifacts ("extra limbs, floating parts, text"). Text-to-3D has
inherent ambiguity about unseen sides; expect to iterate on model_seed/image_seed.
Image-to-3D / multiview beats text for fidelity and control. For the best single-image result:
- Clean, centered subject on a plain/transparent background; fills most of the frame.
- Even, neutral lighting; avoid hard shadows/specular blowout that the model bakes into geometry/texture.
- A roughly 3/4 "hero" angle reads volume better than a flat orthographic front for single-image input.
- Set
orientation/texture_alignment so the generated asset faces and textures consistently with the image.
Multiview is the highest-control path: supply consistent front/left/back/right renders of the same
object (same lighting, same scale). It resolves the "hallucinated back" problem that plagues single-image and
text input. Front is mandatory; add as many real views as you have.
Iteration and repair workflow — [Heuristic]
- Cheap first pass: generate at
texture:false (geometry only) or a lower tier to judge form before
paying for texture. Lock the silhouette, then re-texture the winning geometry with texture_model
rather than regenerating.
- Vary seeds, not prompts, first. If geometry is 80% right, re-roll
model_seed a few times before
rewriting the prompt.
- Move up the model ladder deliberately: v3.0 → v3.1 for detail; use P1 when you specifically need a
controlled low-poly/oriented game asset. Don't pay for v3.1 detail you'll immediately decimate.
- Fix, don't regenerate: holes → mesh_completion; too dense → smart_lowpoly/
quad; wrong parts
granularity → mesh_segmentation; bad texture only → texture_model.
- Gate rigging: run check_riggable before rig_model; if it fails, the mesh usually needs a
cleaner, upright, limb-separated topology first.
Reviewing generated mesh quality — [Heuristic]
Before shipping a Tripo asset, check:
- Poly count vs. budget — did
face_limit land where you need it? Overshoot → smart_lowpoly.
- Topology — raw output is triangulated and often uneven; if the asset will deform (rigged) or subdivide,
demand quad remesh/retopo. Straight-to-static-prop tolerates raw triangulation.
- Watertight / manifold — required for 3D printing; check for holes, non-manifold edges, flipped normals.
- UVs & texture — seams, stretching, baked-in lighting, low-res detail on text/logos. PBR maps present if
pbr:true. Re-texture if the geometry is good but the surface is not.
- Scale & pivot/orientation — confirm real-world size (
auto_size) and that the pivot/facing matches your
engine's convention (P1 orientation helps here).
- Symmetry & floaters — check for asymmetry, detached fragments, fused parts (use generate_parts /
segmentation to separate).
Credits, cost, and rate limits — [Doc]/[3P], verified 2026-07-10
Billing is in credits: $1.00 = 100 credits. New accounts get 300 free credits, valid ~2 weeks.
Each task response reports exact consumed_credit. Representative task prices [Doc] (subject to change):
| Operation |
v3.0/v3.1 (H2/H3) |
P1 |
| text_to_model |
10 (no tex) / 20 (tex) |
30 / 40 |
| image_to_model |
20 / 30 |
40 / 50 |
| multiview_to_model |
20 / 30 |
40 / 50 |
| import model |
free |
— |
Add-ons [Doc]: detailed texture +10, smart low-poly +10, quad +5, generate parts +20,
detailed geometry +20. Post-process: rig 25, retarget 10 per animation, pre-rig check free,
mesh_segmentation 40, mesh_completion 50, smart_lowpoly 30, convert 5 (+5 with options).
Consumer/Studio subscriptions differ from API credit purchasing. Reported tiers [3P], verified
2026-07-10: Basic free (300 credits/month, 1 concurrent task), Pro/Professional ~$15.90/mo
(3,000 credits, 10 concurrent), Advanced ~$39.90/mo (8,000 credits, ~15 concurrent). Treat exact
dollar/credit figures and tier names as unstable; confirm on tripo3d.ai/pricing before quoting.
Rate limits: exceeding limits returns HTTP 429; concurrent-task limits are plan-dependent
(free ≈ 1). Errors carry a code, message, and suggestion (e.g. code 2002 = unsupported task type).
Handle 429 with backoff and respect the concurrency cap by queueing. [Doc/3P]
Rights & licensing — read carefully, this is a real risk surface
[Doc/1P], verified 2026-07-10:
- On the free/Basic plan, generated models are typically published publicly and released under a
Creative Commons CC BY 4.0-style license — i.e., others may use them with attribution, and you do
not get private/exclusive assets. Do not treat free-tier output as confidential or exclusive.
- Paid plans unlock private models and grant commercial-use rights to the geometry you generate,
which is what production/retail/print use requires.
- Tripo's operating entity retains all IP in its software, models, and technology (Background IP); the
license concerns the asset you generate, not the platform.
[Heuristic] Practical guidance for agents:
- For any commercial deliverable, generate on a paid plan and confirm the current Terms yourself
(
tripo3d.ai/terms) — licensing wording changes and CC BY 4.0's "commercial-with-attribution" nuance is
easy to misread. Do not assert "you own it, full commercial rights" without checking the plan and terms.
- You are still responsible for the input: do not feed copyrighted/branded characters, trademarked
designs, or images of identifiable real people you lack rights to, and don't launder those into a
"generated" asset. The generator does not grant you rights you didn't have in the source.
- For 3D printing commercial sales, verify both the Tripo license tier and that the design itself
isn't infringing.
Complete worked example (illustration, not a required formula)
Intent: produce an engine-ready, game-budget stylized barrel prop for Unity, from a concept image, then
convert to FBX. Provider/model: Tripo OpenAPI, P1 (want controlled low-poly + oriented asset).
# 1) Create an image_to_model task with P1, budgeting ~4k faces, PBR on, image-aligned orientation.
curl -s https://api.tripo3d.ai/v2/openapi/task \
-H "Authorization: Bearer $TRIPO_API_KEY" -H "Content-Type: application/json" \
-d '{
"type": "image_to_model",
"model_version": "p1",
"file": { "type": "png", "url": "https://example.com/barrel_ref.png" },
"face_limit": 4000,
"texture": true,
"pbr": true,
"texture_quality": "detailed",
"orientation": "align_image",
"auto_size": true
}'
# -> { "code":0, "data": { "task_id": "TASK_A" } }
# 2) Poll until success, then read output URLs and consumed_credit.
curl -s https://api.tripo3d.ai/v2/openapi/task/TASK_A \
-H "Authorization: Bearer $TRIPO_API_KEY"
# status: queued -> running -> success; data.output has the GLB URL. Download it promptly (URL expires).
# 3) Convert the finished GLB to FBX for the Unity project (chained by task id).
curl -s https://api.tripo3d.ai/v2/openapi/task \
-H "Authorization: Bearer $TRIPO_API_KEY" -H "Content-Type: application/json" \
-d '{ "type":"convert_model", "original_model_task_id":"TASK_A", "format":"FBX" }'
Why structured this way: P1 with an explicit face_limit yields a game-budget mesh directly instead of a
million-triangle mesh you'd have to decimate; orientation:"align_image" keeps the pivot/facing predictable
for level design; texture+PBR give lit-pipeline maps; conversion is a cheap chained task off the same id.
Expected result: a ~4k-tri textured barrel, GLB then FBX. Likely failure modes: baked-in shadows from
a harsh reference photo (fix: cleaner lighting or enable_image_autofix); hallucinated back detail (fix:
supply a multiview set); topology too triangulated for later deformation (fix: quad:true or a
smart_lowpoly pass). Variations: swap to multiview_to_model with front/back/left/right renders for a
faithful hero prop; drop to v3.0 and texture:false for a rapid geometry-only silhouette review before
committing credits.
Sources (verified 2026-07-10)
- Tripo OpenAPI docs — Introduction, Quick Start, Pricing, model-generation pages:
https://docs.tripo3d.ai/
- Official Python SDK API reference (task types, params, animation presets):
https://github.com/VAST-AI-Research/tripo-python-sdk/blob/master/docs/API.md
- Tripo platform docs (billing, rate limit, error handling, animation):
https://platform.tripo3d.ai/docs
- Tripo API product page:
https://www.tripo3d.ai/api; Pricing: https://www.tripo3d.ai/pricing
- Tripo blog — H3.1 / Smart Mesh P1.0 announcements (first-party claims):
https://www.tripo3d.ai/blog
- Terms / licensing:
https://www.tripo3d.ai/terms and 3D-print copyright guide on tripo3d.ai
- Third-party (disclosed, secondary): apidog developer guide
https://apidog.com/blog/how-to-use-tripo-3d-api/;
3D AI Studio Tripo P1 docs; fal / Runware Tripo model pages (proxy webhook behavior)
1---2name: tripo-3d3description: Produce 3D assets with Tripo (tripo3d.ai / Tripo AI by VAST) through its OpenAPI and Studio platform — text-to-3D, image-to-3D, and multiview-to-3D generation; PBR texturing; auto-rigging and preset animation; retopology/low-poly and quad remesh; format conversion (GLB/FBX/OBJ/USDZ/STL/3MF) and engine import (Unity/Unreal/Blender/3D printing). Use when an agent must drive the async task-based Tripo API (create task, poll or webhook, download), choose a model version (v3.0 / v3.1 / P1), write prompts or prepare input images, control mesh/texture parameters, estimate credits and respect rate limits, review generated mesh quality (topology, UVs, poly count, texture fidelity), run iteration and repair workflows, or reason about the rights/licensing of Tripo-generated assets. Trigger on requests to generate, texture, rig, animate, retopologize, convert, or evaluate a 3D model with Tripo, or to integrate the Tripo API into a pipeline. Not for choosing a 3D renderer, editing meshes by hand, or non-Tripo generators.4---56# Tripo 3D asset generation78Tripo (product of VAST AI Research; consumer brand "Tripo AI") turns text, single images, and multi-view9image sets into textured 3D meshes, then post-processes them into engine-ready assets: PBR texturing,10retopology, auto-rigging, preset animation, and format conversion. It ships as a web Studio, mobile apps,11and an async **task-based REST API** ("Tripo OpenAPI"). This skill is about producing production-usable12assets through that API and Studio.1314> Evidence labels used below: **[Doc]** = official Tripo documentation/SDK; **[1P]** = first-party15> Tripo blog/marketing claim (directional, not independently verified); **[3P]** = disclosed third-party16> source; **[Heuristic]** = production judgment, not a documented guarantee. Volatile facts carry a17> **verified 2026-07-10** date; re-check them, because Tripo ships model and pricing changes frequently.1819## When to use Tripo, and when not to2021Tripo's strength is **speed and coverage**: a usable single-object mesh in tens of seconds to a couple of22minutes, across a huge range of props, characters, and hard-surface objects, with texturing/rigging/format23export in one API. **[Heuristic]** Reach for it when you need many game/AR/previz/3D-print assets fast, when24you have a concept image or clean reference, or when you want a first-pass base mesh to refine by hand.2526Do **not** rely on Tripo (or set expectations accordingly) for:2728- **Clean production topology out of the box.** Raw generation output is typically dense, organic29 triangulation. Use quad remesh, smart low-poly, or retopo in a DCC tool before deforming/subdividing.30 **[Heuristic]**31- **Full scenes / multi-object layouts.** It generates one object per task. Compose scenes yourself.32- **Precise dimensional/CAD accuracy.** It is a generative reconstruction, not a measured model. For33 3D printing, verify scale, wall thickness, and manifold-ness.34- **Guaranteed likeness of real, identifiable people, or reproduction of copyrighted/branded characters.**35 Treat these as rights risks (see Rights & licensing).36- **Text, fine logos, thin lattices, transparent/refractive materials.** These are common failure classes.37 **[Heuristic]**3839## The task model (how the API actually works) — **[Doc]**, verified 2026-07-104041Everything is an **asynchronous task**. You submit a task, receive a `task_id`, then poll (or receive a42webhook) until it succeeds, then read output URLs.4344- **Base URL:** `https://api.tripo3d.ai/v2/openapi`45- **Auth:** header `Authorization: Bearer YOUR_API_KEY`. Create keys at `platform.tripo3d.ai/api-keys`.46- **Create a task:** `POST /v2/openapi/task` with a JSON body whose `type` selects the operation.47- **Poll a task:** `GET /v2/openapi/task/{task_id}`. Response carries `status`, `progress`, `output`48 (download URLs), and `consumed_credit` (exact credits charged for that task).49- **Status values:** `queued` → `running` → `success` (also `failed`, `cancelled`, `banned`, `expired`,50 `unknown`). Poll until terminal; read model URLs from `output` on `success`.51- **Uploads:** input images may be passed as a `url` (public JPEG/PNG, max 20 MB), a `file_token` from52 direct upload, or an `object` from STS upload (`bucket: "tripo-data"`, `key: <resource_uri>`). STS upload53 is Tripo's recommended path. Output download URLs are **time-limited** — fetch and store them promptly.54- **Chaining:** post-process tasks reference a prior task by id55 (`original_model_task_id` / `draft_model_task_id`), so a model → texture → rig → convert pipeline is a56 chain of tasks, not a re-upload each time.5758**[Heuristic]** Poll with backoff (e.g., 2 s, then 3–5 s) rather than tight loops; generation is59seconds-to-minutes depending on model/options. For batch/production, prefer webhooks if your integration60path supports them (native webhook support varies by API surface and by proxy providers such as fal/Runware,61which expose an `X-Webhook-URL`-style header **[3P]**, verified 2026-07-10; confirm against current Tripo docs62before depending on it, otherwise poll).6364## Model versions — **[Doc]/[1P]**, verified 2026-07-106566Select with `model_version` on generation tasks. Volatile — re-check the changelog.6768| Family | API `model_version` / selector | Character | Face/poly envelope |69|---|---|---|---|70| v3.0 (HD / "H3") | `v3.0-20250812` | Stable, general default | up to ~1M–1.5M tris **[Doc]** |71| v3.1 (HD / "H3.1") | `v3.1-20260211` | Higher geometric density, sharper edges, stronger PBR | up to ~1.5M–2M tris **[Doc]** |72| P1 (Smart Mesh P1.0) | `p1` selector (premium tier) | Native 3D-diffusion, **game-ready low-poly**, orientation control, seeds; very fast | ~48–20,000 faces **[Doc/1P]** |7374- **v3.0** — safe general-purpose default when you want maximum detail and will retopo later. **[Heuristic]**75- **v3.1** — pick for "hero" detail: denser geometry and better PBR response; costs more compute/time.76 Marketed for hero game assets, cinematics, product shots. **[1P]**77- **P1** — pick when you want **engine-ready, controllable low-poly directly**: a target face budget78 (`face_limit` 48–20,000) and `orientation` control (`default` or `align_image`) so the asset faces a79 predictable axis. Announced at GDC 2026 as a native-3D-diffusion architecture producing low-poly assets in80 seconds. **[1P]** Costs more credits than v3.x per task. Older `Turbo-v1.0`, `v1.4`, and `H2` versions also81 exist for legacy/cheaper paths. **[Doc]**8283The marketing "Hxx" names and the API `model_version` strings are not identical spellings — always drive the84API off the exact `model_version` string from the current docs, not the blog name.8586## Generation tasks and their parameters — **[Doc]**, verified 2026-07-108788### text_to_model89- `type: "text_to_model"`, `model_version`, `prompt` (≤ 1024 chars; multilingual; no emoji/exotic Unicode).90- Optional: `negative_prompt` (≤ 255), `image_seed`, `model_seed`, `texture_seed`, `style`.9192### image_to_model93- `type: "image_to_model"`, `model_version`, and a `file` (via `file_token` | `url` | `object`).94- `enable_image_autofix` cleans up the input; `texture_alignment` and `orientation` control how texture and95 the asset's facing follow the image.9697### multiview_to_model98- `type: "multiview_to_model"`, `files` = an **ordered** list `[front, left, back, right]`.99- **Front is required**; other views may be omitted (pass empty for that slot). Use **at least 2** views.100 More consistent views → better back/side reconstruction. **[Doc]**101102### Shared generation controls103- `texture` (bool, default `true`; ~10 credits cheaper when `false` for geometry-only).104- `pbr` (bool, default `true`) — emit PBR maps (base color / metallic-roughness / normal) for lit pipelines.105- `texture_quality`: `"standard"` (default) or `"detailed"` (+10 credits).106- `geometry_quality`: `"standard"` or `"detailed"` (+20 credits) on supported versions.107- `face_limit` (int) — cap output triangles; the practical lever for engine budgets.108- `quad` (bool, default `false`, +5 credits) — quad-dominant remesh for cleaner edge flow / subdivision.109- `smart_low_poly` (bool, default `false`, +10 credits) — automatic low-poly-ization at generation time.110- `auto_size` (bool) — normalize real-world scale; `compress` for smaller GLB; `export_uv`; `generate_parts`111 (+20 credits) to split into named parts; `style` for stylized geometry presets.112113## Post-processing pipeline — **[Doc]**, verified 2026-07-10114115Each references a prior task id, so you refine without re-generating:116117- **texture_model** — re-texture an existing mesh. Key inputs: `original_model_task_id`, `texture`, `pbr`,118 `texture_quality`, `texture_alignment`, `texture_seed`, `part_names`, `bake`, plus a `text_prompt`,119 `image_prompt`, or `style_image` to redirect the look.120- **refine_model** — refine a draft mesh (`draft_model_task_id`).121- **mesh_segmentation** (40 cr) / **mesh_completion** (50 cr) — split into parts / fill holes and finish122 partial geometry.123- **smart_lowpoly** (30 cr) — retopo high-poly → low-poly with `face_limit`, `quad`, `bake`, `part_names`.124- **stylize_model** — apply a stylization `style`: `LEGO`, `VOXEL`, `VORONOI`, `MINECRAFT`, with `block_size`.125126### Rigging & animation — **[Doc]**, verified 2026-07-101271. **check_riggable** (`type: "check_riggable"`, free) — validate a mesh can be auto-rigged **before** paying128 to rig. Always gate on this for characters.1292. **rig_model** (25 cr) — auto-rig. Params: `original_model_task_id`, `out_format` (`"glb"` | `"fbx"`),130 `rig_type`, `spec` (skeleton spec, e.g. humanoid). Auto-rigging expects a roughly upright,131 symmetric, single-character mesh with clearly separated limbs. **[Heuristic]**1323. **retarget_animation** (10 cr per animation) — apply preset motions to the rigged mesh.133 `animation` takes one or a list of `"preset:<name>"` values: `preset:idle`, `preset:walk`, `preset:run`,134 `preset:jump`, `preset:climb`, `preset:dive`, `preset:fall`, `preset:turn`, `preset:slash`,135 `preset:shoot`, `preset:hurt`, plus quadruped/hexapod/octopod/serpentine/aquatic variants for non-humanoids.136 `out_format`, `bake_animation`, and `export_with_geometry` control the exported clip.137138### Format conversion / export — **[Doc]**, verified 2026-07-10139- **convert_model** — `original_model_task_id` + `format` ∈ `GLTF`, `USDZ`, `FBX`, `OBJ`, `STL`, `3MF`140 (base 5 cr, +5 with extra options). Native generation output is **GLB**; convert to your target.141 - Engine/tool mapping **[Heuristic]**: Unity/Unreal → **FBX** or **glTF/GLB**; Blender → **GLB/glTF** or142 **FBX**; USD pipelines / Apple AR Quick Look → **USDZ**; 3D printing → **STL** or **3MF** (STL drops143 color; 3MF keeps color/material).144145## Prompt and input-image strategy — **[Heuristic]** unless marked146147**Text-to-3D prompts** describe an *object*, not a scene: subject + form + material + style. Be concrete148about silhouette and material ("a low-poly stylized wooden treasure chest with iron bands, closed lid").149Use `negative_prompt` to suppress recurring artifacts ("extra limbs, floating parts, text"). Text-to-3D has150inherent ambiguity about unseen sides; expect to iterate on `model_seed`/`image_seed`.151152**Image-to-3D / multiview beats text for fidelity and control.** For the best single-image result:153- Clean, centered subject on a plain/transparent background; fills most of the frame.154- Even, neutral lighting; avoid hard shadows/specular blowout that the model bakes into geometry/texture.155- A roughly 3/4 "hero" angle reads volume better than a flat orthographic front for single-image input.156- Set `orientation`/`texture_alignment` so the generated asset faces and textures consistently with the image.157158**Multiview** is the highest-control path: supply consistent front/left/back/right renders of the *same*159object (same lighting, same scale). It resolves the "hallucinated back" problem that plagues single-image and160text input. Front is mandatory; add as many real views as you have.161162## Iteration and repair workflow — **[Heuristic]**1631641. **Cheap first pass:** generate at `texture:false` (geometry only) or a lower tier to judge form before165 paying for texture. Lock the silhouette, then re-texture the winning geometry with **texture_model**166 rather than regenerating.1672. **Vary seeds, not prompts, first.** If geometry is 80% right, re-roll `model_seed` a few times before168 rewriting the prompt.1693. **Move up the model ladder deliberately:** v3.0 → v3.1 for detail; use P1 when you specifically need a170 controlled low-poly/oriented game asset. Don't pay for v3.1 detail you'll immediately decimate.1714. **Fix, don't regenerate:** holes → **mesh_completion**; too dense → **smart_lowpoly**/`quad`; wrong parts172 granularity → **mesh_segmentation**; bad texture only → **texture_model**.1735. **Gate rigging:** run **check_riggable** before **rig_model**; if it fails, the mesh usually needs a174 cleaner, upright, limb-separated topology first.175176## Reviewing generated mesh quality — **[Heuristic]**177178Before shipping a Tripo asset, check:179- **Poly count vs. budget** — did `face_limit` land where you need it? Overshoot → smart_lowpoly.180- **Topology** — raw output is triangulated and often uneven; if the asset will deform (rigged) or subdivide,181 demand quad remesh/retopo. Straight-to-static-prop tolerates raw triangulation.182- **Watertight / manifold** — required for 3D printing; check for holes, non-manifold edges, flipped normals.183- **UVs & texture** — seams, stretching, baked-in lighting, low-res detail on text/logos. PBR maps present if184 `pbr:true`. Re-texture if the geometry is good but the surface is not.185- **Scale & pivot/orientation** — confirm real-world size (`auto_size`) and that the pivot/facing matches your186 engine's convention (P1 `orientation` helps here).187- **Symmetry & floaters** — check for asymmetry, detached fragments, fused parts (use generate_parts /188 segmentation to separate).189190## Credits, cost, and rate limits — **[Doc]/[3P]**, verified 2026-07-10191192Billing is in **credits**: **$1.00 = 100 credits**. New accounts get **300 free credits, valid ~2 weeks**.193Each task response reports exact `consumed_credit`. Representative task prices **[Doc]** (subject to change):194195| Operation | v3.0/v3.1 (H2/H3) | P1 |196|---|---|---|197| text_to_model | 10 (no tex) / 20 (tex) | 30 / 40 |198| image_to_model | 20 / 30 | 40 / 50 |199| multiview_to_model | 20 / 30 | 40 / 50 |200| import model | free | — |201202Add-ons **[Doc]**: detailed texture +10, smart low-poly +10, quad +5, generate parts +20,203detailed geometry +20. Post-process: rig 25, retarget 10 per animation, pre-rig check free,204mesh_segmentation 40, mesh_completion 50, smart_lowpoly 30, convert 5 (+5 with options).205206Consumer/Studio subscriptions differ from API credit purchasing. Reported tiers **[3P]**, verified2072026-07-10: **Basic** free (~300 credits/month, 1 concurrent task), **Pro/Professional** ~$15.90/mo208(~3,000 credits, ~10 concurrent), **Advanced** ~$39.90/mo (~8,000 credits, ~15 concurrent). Treat exact209dollar/credit figures and tier names as unstable; confirm on `tripo3d.ai/pricing` before quoting.210211**Rate limits:** exceeding limits returns **HTTP 429**; **concurrent-task** limits are plan-dependent212(free ≈ 1). Errors carry a `code`, `message`, and `suggestion` (e.g. code `2002` = unsupported task type).213Handle 429 with backoff and respect the concurrency cap by queueing. **[Doc/3P]**214215## Rights & licensing — read carefully, this is a real risk surface216217**[Doc/1P]**, verified 2026-07-10:218- On the **free/Basic** plan, generated models are typically **published publicly** and released under a219 **Creative Commons CC BY 4.0**-style license — i.e., others may use them **with attribution**, and you do220 not get private/exclusive assets. Do not treat free-tier output as confidential or exclusive.221- **Paid plans** unlock **private** models and grant **commercial-use rights** to the geometry you generate,222 which is what production/retail/print use requires.223- Tripo's operating entity retains all IP in its **software, models, and technology** (Background IP); the224 license concerns the *asset you generate*, not the platform.225226**[Heuristic]** Practical guidance for agents:227- For any commercial deliverable, generate on a **paid plan** and confirm the current Terms yourself228 (`tripo3d.ai/terms`) — licensing wording changes and CC BY 4.0's "commercial-with-attribution" nuance is229 easy to misread. Do not assert "you own it, full commercial rights" without checking the plan and terms.230- You are still responsible for the **input**: do not feed copyrighted/branded characters, trademarked231 designs, or images of identifiable real people you lack rights to, and don't launder those into a232 "generated" asset. The generator does not grant you rights you didn't have in the source.233- For **3D printing** commercial sales, verify both the Tripo license tier **and** that the design itself234 isn't infringing.235236## Complete worked example (illustration, not a required formula)237238**Intent:** produce an engine-ready, game-budget stylized barrel prop for Unity, from a concept image, then239convert to FBX. **Provider/model:** Tripo OpenAPI, P1 (want controlled low-poly + oriented asset).240241```bash242# 1) Create an image_to_model task with P1, budgeting ~4k faces, PBR on, image-aligned orientation.243curl -s https://api.tripo3d.ai/v2/openapi/task \244 -H "Authorization: Bearer $TRIPO_API_KEY" -H "Content-Type: application/json" \245 -d '{246 "type": "image_to_model",247 "model_version": "p1",248 "file": { "type": "png", "url": "https://example.com/barrel_ref.png" },249 "face_limit": 4000,250 "texture": true,251 "pbr": true,252 "texture_quality": "detailed",253 "orientation": "align_image",254 "auto_size": true255 }'256# -> { "code":0, "data": { "task_id": "TASK_A" } }257258# 2) Poll until success, then read output URLs and consumed_credit.259curl -s https://api.tripo3d.ai/v2/openapi/task/TASK_A \260 -H "Authorization: Bearer $TRIPO_API_KEY"261# status: queued -> running -> success; data.output has the GLB URL. Download it promptly (URL expires).262263# 3) Convert the finished GLB to FBX for the Unity project (chained by task id).264curl -s https://api.tripo3d.ai/v2/openapi/task \265 -H "Authorization: Bearer $TRIPO_API_KEY" -H "Content-Type: application/json" \266 -d '{ "type":"convert_model", "original_model_task_id":"TASK_A", "format":"FBX" }'267```268269**Why structured this way:** P1 with an explicit `face_limit` yields a game-budget mesh directly instead of a270million-triangle mesh you'd have to decimate; `orientation:"align_image"` keeps the pivot/facing predictable271for level design; texture+PBR give lit-pipeline maps; conversion is a cheap chained task off the same id.272**Expected result:** a ~4k-tri textured barrel, GLB then FBX. **Likely failure modes:** baked-in shadows from273a harsh reference photo (fix: cleaner lighting or `enable_image_autofix`); hallucinated back detail (fix:274supply a multiview set); topology too triangulated for later deformation (fix: `quad:true` or a275`smart_lowpoly` pass). **Variations:** swap to `multiview_to_model` with front/back/left/right renders for a276faithful hero prop; drop to v3.0 and `texture:false` for a rapid geometry-only silhouette review before277committing credits.278279## Sources (verified 2026-07-10)280281- Tripo OpenAPI docs — Introduction, Quick Start, Pricing, model-generation pages: `https://docs.tripo3d.ai/`282- Official Python SDK API reference (task types, params, animation presets):283 `https://github.com/VAST-AI-Research/tripo-python-sdk/blob/master/docs/API.md`284- Tripo platform docs (billing, rate limit, error handling, animation): `https://platform.tripo3d.ai/docs`285- Tripo API product page: `https://www.tripo3d.ai/api`; Pricing: `https://www.tripo3d.ai/pricing`286- Tripo blog — H3.1 / Smart Mesh P1.0 announcements (first-party claims): `https://www.tripo3d.ai/blog`287- Terms / licensing: `https://www.tripo3d.ai/terms` and 3D-print copyright guide on tripo3d.ai288- Third-party (disclosed, secondary): apidog developer guide `https://apidog.com/blog/how-to-use-tripo-3d-api/`;289 3D AI Studio Tripo P1 docs; fal / Runware Tripo model pages (proxy webhook behavior)