Text to 3D API
在你自己的應用程式中根據文字提示生成 3D 模型。
文字生成 3D 分兩個步驟進行。首先,建立一個 preview 任務(mode: "preview")以生成不帶 texture 的 3D mesh,這樣你就可以檢查其形狀。然後,將成功的 preview 任務的任務 ID 傳送給 refine 任務(mode: "refine"),為 mesh 加上 texture。這兩個步驟使用相同的 endpoint。
建立 Text to 3D preview 任務
建立一個 Text to 3D preview 任務,根據文字 prompt 生成一個未貼圖的 3D mesh(僅幾何體)。這是兩步工作流程的第一步。preview 成功後,將其任務 ID 傳送到 refine 任務中,為 mesh 新增 texture。參見 建立 Text to 3D refine 任務。完整的回應模式請參見 Text to 3D 任務物件。
該任務在背景執行。關於任務通常需要多長時間,請參見 處理時間。
Request
# Simple preview with required params only
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "preview",
"prompt": "a monster mask"
}'
# Preview with Ultra 4K geometry, remesh, and A-pose
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "preview",
"prompt": "a futuristic robot warrior",
"ai_model": "meshy-7.1",
"geometry_resolution": "4k",
"should_remesh": true,
"target_polycount": 100000,
"pose_mode": "a-pose",
"target_formats": ["glb"]
}'
Response
{
"result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
參數
- Name
- mode
- Type
- string
- 必選
- Description
兩步工作流程中的步驟。傳送
preview以建立一個 preview 任務。
- Name
- prompt
- Type
- string
- 必選
- Description
描述要生成的物件的文字,最多 800 個字元。超出長度將回傳
400。
- Name
- model_type
- Type
- string
- 預設值 standard
- Description
要生成的 3D mesh 的類型。
可選值:
standard:高精度 3D meshsmart-topology:Smart Topology mesh。透過ai_model(meshy-t2或meshy-t2.5)選擇模型。
使用
smart-topology時,Meshy 會忽略should_remesh和decimation_mode,並且只接受topology: triangle。
- Name
- ai_model
- Type
- string
- 預設值 latest
- Description
用於生成 3D 模型的 AI 模型。可用值取決於
model_type。標準模型(
model_type: standard):meshy-6-litemeshy-6meshy-7.1latest:Meshy 7.1meshy-7(已棄用):請改為傳送meshy-7.1
Smart Topology 模型(
model_type: smart-topology):meshy-t2:更清晰的 topology,原生分離的部件,三角形輸出,面數透過target_polycount設定meshy-t2.5(預設):遊戲 asset 所需的更銳利細節,三角形輸出,面數透過target_polycount設定
- Name
- geometry_resolution
- Type
- string
- 預設值 standard
- Description
幾何體生成階段。僅適用於 preview 任務。在 refine 中使用此參數將回傳
400。可選值:
standard2k:以 2048³ 執行 Ultra 階段4k:以 4096³ 執行 Ultra 階段,以取得更精細的表面細節
2k需要meshy-7.1、latest或已棄用的meshy-7。4k需要meshy-7.1或latest。其他模型將回傳400。
- Name
- ultra_mode
- Type
- boolean
- ⚠ 已棄用
- 預設值 false
- Description
請改為傳送
geometry_resolution。ultra_mode: true等同於geometry_resolution: "2k"。
- Name
- should_remesh
- Type
- boolean
- 預設值 true (meshy-6-lite), false (other models)
- Description
生成後是否對模型進行 remesh。如需取得最高品質的 3D 模型,請傳送
false。
should_remesh = true- Name
- topology
- Type
- string
- 預設值 triangle
- Description
重新生成的模型的面類型。
可選值:
quad:以四邊形為主的 meshtriangle:經過簡化的三角形 mesh
Smart Topology 的輸出僅支援三角形。當
ai_model為meshy-t2或meshy-t2.5時傳送quad將回傳400。
- Name
- decimation_mode
- Type
- integer
- Description
按等級調整的自適應面數。設定此參數後,Meshy 會忽略
target_polycount。可選值:
1:ultra2:high3:medium4:low
- Name
- target_polycount
- Type
- integer
- Description
目標面數。實際結果可能因幾何體不同而與目標值有所差異。該參數在以下兩種獨立情況下生效:
- Remesh:在
standard模型上設定should_remesh: true時。Meshy 會將 mesh 重新生成(簡化)到約為該數值。如果設定了decimation_mode,Meshy 會使用它並忽略target_polycount。 - Smart Topology:當
model_type: smart-topology且ai_model為meshy-t2或meshy-t2.5時。Meshy 會直接按該面數生成模型。此時不會執行 remesh,也不需要should_remesh。
下表展示了每種情況的取值範圍和預設值:
情況 範圍 預設值 Remesh 100至30000030000meshy-t2100至150004000meshy-t2.5100至3000015000超出範圍的值將回傳
400。- Remesh:在
- Name
- symmetry_mode
- Type
- string
- ⚠ 已棄用
- 預設值 auto
- Description
請勿使用此參數。它不會影響輸出結果。
可選值:
off:停用 symmetryauto:根據輸入的幾何體套用 symmetryon:在生成過程中強制使用 symmetry
- Name
- pose_mode
- Type
- string
- 預設值 ""
- Description
生成模型的姿態。
可選值:
a-pose:A 字形姿態t-pose:T 字形姿態""(空字串):無特定姿態
- Name
- is_a_t_pose
- Type
- boolean
- ⚠ 已棄用
- 預設值 false
- Description
請改為傳送
pose_mode。是否以 A 字形姿態或 T 字形姿態生成模型。
- Name
- art_style
- Type
- string
- ⚠ 已棄用
- 預設值 realistic
- Description
請勿使用此參數。Meshy 會忽略它。
- Name
- moderation
- Type
- boolean
- 預設值 false
- Description
在生成之前是否篩查
prompt中的有害內容。如果 Meshy 偵測到有害內容,請求將回傳400,且 Meshy 不會建立任務。
- Name
- target_formats
- Type
- string[]
- Description
要生成的檔案格式。Meshy 僅生成並回傳這些格式,這可以縮短任務時間。如果不設定此參數,Meshy 會生成除
3mf之外的所有格式,3mf僅在你要求時才會生成。可選值:
glbobjfbxstlusdz3mf
- Name
- alpha_thumbnail
- Type
- boolean
- 預設值 false
- Description
是否同時渲染一張帶透明背景(RGBA)的預覽圖,取得任務時將在
alpha_thumbnail_url中回傳。thumbnail_url不會改變。
- Name
- auto_size
- Type
- boolean
- 預設值 false
- Description
是否使用 AI 視覺估算物件的真實世界高度,並據此調整模型尺寸。除非設定了
origin_at,否則 Meshy 會將 origin 放置在底部。
auto_size = true- Name
- origin_at
- Type
- string
- 預設值 bottom
- Description
模型 origin 的放置位置,
bottom或center。
回傳值
回應的 result 欄位中保存了新建立的 Text to 3D 任務的 ID。
失敗模式
- Name
400 - Bad Request- Description
請求無法執行。錯誤訊息會說明發現的問題。例如:
- 缺少參數:缺少必要的參數,例如
prompt或mode。 - Prompt 過長:
prompt超過了字元限制。 - 不支援該模型使用 Ultra:
geometry_resolution為2k或4k,而ai_model無法執行該功能。
請修正請求後重新傳送。參見 Errors。
- 缺少參數:缺少必要的參數,例如
- Name
401 - Unauthorized- Description
API 金鑰缺失或無效。請檢查
Authorization請求標頭。
- Name
402 - Payment Required- Description
例如:
- 積分不足:帳戶沒有足夠的積分來完成此任務,或帳戶已達到積分上限。請檢查你的積分餘額,然後重試。
- 免費方案:建立任務需要付費方案。請在你的 訂閱設定 中升級方案,然後重試。
- Name
403 - Forbidden- Description
內容審核(moderation)攔截了該 prompt 或輸入圖片。請更改輸入內容後重試。
- Name
429 - Too Many Requests- Description
你已超出速率限制。請稍候後重試。參見 速率限制。
建立 Text to 3D refine 任務
建立一個 Text to 3D refine 任務,為已完成的 preview 任務的 mesh 新增 texture。將成功的 preview 任務的 ID 作為 preview_task_id 送出。請參閱建立 Text to 3D preview 任務。這是兩步驟工作流程的第二步。
該任務在背景執行。關於任務通常需要多久時間,請參閱處理時間。
Request
# Basic refine task
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "refine",
"preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"enable_pbr": true
}'
# Refine with auto-size and GLB format
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "refine",
"preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"target_formats": ["glb"],
"auto_size": true
}'
# Refine with Meshy N1 from the preview's stored reference image
curl https://api.meshy.ai/openapi/v2/text-to-3d \
-H 'Authorization: Bearer ${YOUR_API_KEY}' \
-H 'Content-Type: application/json' \
-d '{
"mode": "refine",
"preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"ai_model": "meshy-n1"
}'
Response
{
"result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
參數
- Name
- mode
- Type
- string
- 必選
- Description
兩步驟工作流程中的步驟。送出
refine以建立 refine 任務。
- Name
- preview_task_id
- Type
- string
- 必選
- Description
要新增 texture 的 preview 任務的 ID。該 preview 任務的狀態必須為
SUCCEEDED。
- Name
- enable_pbr
- Type
- boolean
- 預設值 false
- Description
是否在產生基礎顏色貼圖的同時也產生 PBR 貼圖(金屬度、粗糙度和法線)。
使用
ai_model為meshy-6時,Meshy 還會產生一張發光貼圖,但在texture_resolution: 8k時除外。meshy-6-lite、meshy-7、meshy-7.1和latest不會產生發光貼圖。對未設定ai_model的meshy-t2或meshy-t2.5preview 進行 refine 時也不會產生。使用ai_model: meshy-n1時,設為true會回傳400。
- Name
- texture_resolution
- Type
- string
- 預設值 2k
- Description
基礎顏色 texture 的解析度。僅適用於 refine 任務。若在 preview 中設定此參數會回傳
400。可用值:
2k:2048×20484k:4096×40968k:8192×8192
更高的解析度能捕捉更多表面細節。
4k和8k需要ai_model為meshy-6、meshy-7.1或latest。使用meshy-n1時,設定這些值會回傳400。在8k時,Meshy 不會產生發光貼圖。
- Name
- hd_texture
- Type
- boolean
- ⚠ 已棄用
- 預設值 false
- Description
請改為送出
texture_resolution。hd_texture: true等同於texture_resolution: "4k"。如果兩者都送出,Meshy 會使用texture_resolution。
- Name
- texture_prompt
- Type
- string
- Description
用於指導 texturing 的文字,最多 800 個字元。超出長度會回傳
400。請送出texture_prompt或texture_image_url,不要同時送出兩者。如果兩者都送出,Meshy 會使用texture_prompt。使用ai_model: meshy-n1時,送出該參數會回傳400。
- Name
- texture_image_url
- Type
- string
- Description
用於指導 texturing 的 2D 圖片,可以是公開 URL 或 base64 編碼的 data URI,例如
data:image/jpeg;base64,<your base64-encoded image data>。圖片必須為
.jpg、.jpeg、.png或.webp檔案,大小不超過 20 MB,每邊至少 32 像素,且像素總數(寬 × 高)不超過 178,956,970。使用
ai_model: meshy-n1時,Meshy 會將該圖片作為正面視角進行 texturing。當圖片中的形狀與模型差異較大時,基於圖片的 texturing 效果可能不佳。
- Name
- ai_model
- Type
- string
- 預設值 inherited from the preview task
- Description
用於為 mesh 新增 texture 的 AI 模型。
可用值:
meshy-6-litemeshy-6meshy-7.1latest:Meshy 7.1meshy-n1:僅根據參考圖片產生 2K 基礎顏色 texture。不支援文字 prompt,不產生 PBR 貼圖,也不支援 4K 或 8K。meshy-7(已棄用):請改為送出meshy-7.1
省略此參數將使用該 preview 任務所用的模型,使 preview 與其 refine 全程使用同一模型。送出某個值可覆蓋該設定。明確指定
latest時的解析方式與 preview 任務相同,因此使用latest的 preview 及其對應的latestrefine 始終使用同一個 texture 模型。使用
meshy-n1時,Meshy 會根據texture_image_url新增 texture。如果未提供該參數,Meshy 會使用meshy-7.1或latestpreview 中儲存的參考圖片。其他任何 preview 若未送出texture_image_url都會回傳400。該 preview 的三角面數最多為 7,999,999。若 preview 已被 remesh 為四邊形網格,則會回傳400。
- Name
- moderation
- Type
- boolean
- 預設值 false
- Description
是否在產生前對
texture_prompt和texture_image_url進行有害內容審查。如果 Meshy 偵測到有害內容,請求會回傳400,且 Meshy 不會建立任務。
- Name
- remove_lighting
- Type
- boolean
- 預設值 true
- Description
是否從基礎顏色 texture 中移除高光和陰影。更乾淨的結果在自訂光照下效果更好。
僅當
ai_model為meshy-6時生效。meshy-7.1和latest接受該參數但會忽略它,對未設定ai_model的meshy-t2或meshy-t2.5preview 進行 refine 時同樣如此。與meshy-6-lite一起送出會回傳400。使用meshy-n1時,設為true會回傳400。
- Name
- target_formats
- Type
- string[]
- Description
要產生的檔案格式。Meshy 僅產生並回傳這些格式,這樣可以縮短任務時間。如果省略此參數,Meshy 會產生除
3mf之外的所有格式,僅在您請求時才產生3mf。可用值:
glbobjfbxstlusdz3mf
- Name
- alpha_thumbnail
- Type
- boolean
- 預設值 false
- Description
是否同時算繪一張帶透明背景(RGBA)的預覽圖,在取得任務時透過
alpha_thumbnail_url回傳。thumbnail_url不會改變。
- Name
- auto_size
- Type
- boolean
- 預設值 false
- Description
是否使用 AI 視覺估算物體的真實世界高度並據此調整模型尺寸。除非設定了
origin_at,否則 Meshy 會將 origin 放在底部。
auto_size = true- Name
- origin_at
- Type
- string
- 預設值 bottom
- Description
模型 origin 的放置位置,
bottom或center。
回傳值
回應的 result 欄位保存新 Text to 3D 任務的 ID。
失敗情形
- Name
400 - Bad Request- Description
請求無法執行。錯誤訊息會說明發現了什麼問題。例如:
- 無效的任務 ID:
preview_task_id無效,或與您的任何 preview 任務都不相符。 - 任務尚未就緒:該 preview 任務尚未成功完成。
- 模型不相符:該 preview 任務的 AI 模型與所請求的 refine 模型不相容。
- remove_lighting 不受支援的模型:
remove_lighting與ai_model: "meshy-6-lite"一起送出。 - Meshy N1 缺少參考圖片:送出了
ai_model: meshy-n1但未提供texture_image_url,且該 preview 沒有 Meshy N1 可用的參考圖片。請送出texture_image_url。 - Meshy N1 的四邊形 preview:對已被 remesh 為四邊形網格的 preview 送出了
ai_model: meshy-n1。請使用其他ai_model對其進行 refine。 - Meshy N1 三角面數過多:使用
ai_model: meshy-n1時,該 preview 的三角面數超過 7,999,999。請使用其他ai_model對其進行 refine。 - Meshy N1 不支援的選項:
ai_model: meshy-n1與以下任一選項一起送出:texture_promptenable_pbr: truetexture_resolution為4k或8khd_texture: true且未設定texture_resolutionremove_lighting: true
修正請求後重新送出。請參閱 Errors。
- 無效的任務 ID:
- Name
401 - Unauthorized- Description
API 金鑰缺失或無效。請檢查
Authorization請求標頭。
- Name
402 - Payment Required- Description
例如:
- 積分不足:帳戶沒有足夠的積分來執行此任務,或帳戶已達到積分限額。請檢查您的 Balance,然後重試。
- 免費方案:建立任務需要付費方案。請在您的訂閱設定中升級您的方案,然後重試。
- Name
403 - Forbidden- Description
內容審核攔截了該 prompt 或輸入圖片。請更改輸入內容,然後重試。
- Name
429 - Too Many Requests- Description
您已超出速率限制。請稍候後重試。請參閱速率限制。
取得 Text to 3D 任務
根據任務 ID 返回對應的 Text to 3D 任務。此介面同時適用於 preview 和 refine 任務。
Request
curl https://api.meshy.ai/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"prompt": "a monster mask",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***"
}
],
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 20
}
參數
- Name
- id
- Type
- path
- Description
建立回應中返回的任務 ID。
回傳值
範例
下表展示了每種 mode 下的範例模型。
| Mode | 範例模型 |
|---|---|
| Preview | ![]() |
| Refine | ![]() |
刪除一個 Text to 3D 任務
永久刪除一個 Text to 3D 任務,包括其模型和資料。刪除操作無法復原。
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// 200 OK on success, with an empty body.
//
// 409 Conflict when the task is IN_PROGRESS. The task keeps running:
{
"message": "Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."
}
路徑參數
- Name
- id
- Type
- path
- Description
要刪除的任務的 ID。
任務狀態
刪除一個 PENDING 任務會退還你建立它時所使用的積分。
IN_PROGRESS 任務無法被刪除。該請求會回傳 409 Conflict,
且任務會繼續執行。Meshy 不會為已經開始的任務退還積分,
因此刪除它會讓你同時損失積分和結果。請等待它
變為 SUCCEEDED、FAILED 或 CANCELED 狀態後再刪除。
刪除處於最終狀態(SUCCEEDED、FAILED 或 CANCELED)的任務
不會退還其積分。
回傳值
任務刪除成功時回傳 200 OK;當任務處於
IN_PROGRESS 狀態時回傳 409 Conflict。
獲取 Text to 3D 任務列表
返回您的 Text to 3D 任務列表。
Request
curl https://api.meshy.ai/openapi/v2/text-to-3d?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"prompt": "a monster mask",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***"
}
],
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 20
}
]
參數
- Name
- page_num
- Type
- integer
- 預設值 1
- Description
要返回的頁碼,最大為
255。更大的值將返回400。
- Name
- page_size
- Type
- integer
- 預設值 10
- Description
每頁的任務數量,最大為
100。
- Name
- sort_by
- Type
- string
- Description
排序方式。
可用值:
+created_at:最早的在前-created_at:最新的在前
返回值
分頁的 Text to 3D 任務物件列表。
流式取得 Text to 3D 任務
以伺服器傳送事件(SSE)的形式串流推送 Text to 3D 任務的更新。
Request
curl -N https://api.meshy.ai/openapi/v2/text-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Error event example
event: error
data: {
"status_code": 404,
"message": "Task not found"
}
// Message event examples illustrate task progress.
// These examples are shortened. Each event holds the full task object.
event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"progress": 50,
"status": "IN_PROGRESS"
}
event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1692771650657,
"started_at": 1692771667037,
"finished_at": 1692771669037,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
},
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 20
}
參數
- Name
- id
- Type
- path
- Description
來自建立回應的任務 ID。
回傳值
以伺服器傳送事件的形式回傳 Text to 3D 任務物件 的串流。
每個事件都包含完整的任務物件,其結構與 Get endpoint 回傳的內容相同。當任務處於 PENDING 或 IN_PROGRESS 狀態時,其結果欄位尚無數值。
Text to 3D 任務物件
Text to 3D 任務物件描述了一個根據文字 prompt 生成 3D 模型的任務。它儲存了任務的狀態、progress,以及任務成功後的模型檔案。Text to 3D 有兩個階段,preview 和 refine。preview 任務生成僅含網格的 3D 模型,refine 任務則根據 preview 的結果生成帶貼圖的 3D 模型。
屬性
Example Text to 3D Task Object
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***"
},
"prompt": "a monster mask",
"texture_prompt": "green slimy skin with scales and warts",
"texture_image_url": "",
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 20
}
- Name
- id
- Type
- string
- Description
任務 ID。請將其視為一個不透明的字串,不要依賴其格式。
- Name
- type
- Type
- string
- Description
任務類型,
text-to-3d-preview表示 preview 任務,text-to-3d-refine表示 refine 任務。
- Name
- model_urls
- Type
- object
- Description
生成的 3D 模型的下載 URL,每種檔案格式對應一個。任務未生成的格式不會有對應的鍵,而不是空字串。
- Name
glb- Type
- string
- Description
GLB 檔案。
- Name
fbx- Type
- string
- Description
FBX 檔案。
- Name
usdz- Type
- string
- Description
USDZ 檔案。
- Name
obj- Type
- string
- Description
OBJ 檔案。
- Name
mtl- Type
- string
- Description
MTL 檔案。
- Name
stl- Type
- string
- Description
STL 檔案。
- Name
3mf- Type
- string
- Description
3MF 檔案。僅當
target_formats包含3mf時才會出現。
- Name
- prompt
- Type
- string
- Description
你在建立任務時傳送的
prompt,未經修改。
- Name
- texture_prompt
- Type
- string
- Description
你傳送的、用於指導 refine 階段貼圖的文字 prompt。
- Name
- ultra_mode
- Type
- boolean
- ⚠ 已棄用
- Description
請改為讀取
geometry_resolution。
- Name
- geometry_resolution
- Type
- string
- Description
preview 任務所使用的 Ultra 檔位,
2k或4k。standard檔位下不包含該欄位。
- Name
- texture_image_url
- Type
- string
- Description
你傳送的、用於指導貼圖的圖片的下載 URL。
- Name
- thumbnail_url
- Type
- string
- Description
3D 模型縮圖的下載 URL。
- Name
- alpha_thumbnail_url
- Type
- string
- Description
thumbnail_url的透明背景版本(RGBA)的下載 URL。僅當你在建立任務時設定了alpha_thumbnail: true,並且 Meshy 已算繪出透明預覽圖時才會出現。
- Name
- progress
- Type
- integer
- Description
任務完成的百分比。任務開始前為
0,成功後為100。
- Name
- started_at
- Type
- timestamp
- Description
任務開始的時間,以 Unix 毫秒表示。任務開始前為
0。
- Name
- created_at
- Type
- timestamp
- Description
任務建立的時間,以 Unix 毫秒表示。
- Name
- finished_at
- Type
- timestamp
- Description
任務完成的時間,以 Unix 毫秒表示。任務完成前為
0。
- Name
- status
- Type
- string
- Description
任務狀態,取值為
PENDING、IN_PROGRESS、SUCCEEDED、FAILED或CANCELED之一。
- Name
- texture_urls
- Type
- array
- Description
生成的 texture 貼圖的下載 URL,為一個物件陣列。通常只包含一個物件。每個物件包含以下欄位:
- Name
base_color- Type
- string
- Description
基礎顏色貼圖。
- Name
metallic- Type
- string
- Description
金屬度貼圖。如果你在建立任務時設定了
enable_pbr: false,則不會出現。
- Name
normal- Type
- string
- Description
法線貼圖。如果你在建立任務時設定了
enable_pbr: false,則不會出現。
- Name
roughness- Type
- string
- Description
粗糙度貼圖。如果你在建立任務時設定了
enable_pbr: false,則不會出現。
- Name
emission- Type
- string
- Description
自發光貼圖。在以下任一情況下都不會出現:
- 你在建立任務時設定了
enable_pbr: false。 ai_model為meshy-6-lite、meshy-7、meshy-7.1或latest。texture_resolution為8k。- 該任務是在未設定
ai_model的情況下,對meshy-t2或meshy-t2.5的 preview 進行 refine。
- 你在建立任務時設定了
- Name
- preceding_tasks
- Type
- integer
- Description
排在此任務之前的佇列任務數量。該值僅在任務處於
PENDING狀態時才有意義。
- Name
- task_error
- Type
- object
- Description
任務失敗時的錯誤詳情。除非狀態為
FAILED,否則為null。參見 錯誤。
- Name
- consumed_credits
- Type
- integer
- Description
任務消耗的積分數量。當狀態為
PENDING、IN_PROGRESS或SUCCEEDED時會出現該欄位。對於FAILED的任務,該值為0,因為 Meshy 會在任務失敗時退還積分。

