Bake Texture
Texture baking API reference. Transfer textures from high-poly to retopologized mesh at up to 8K resolution. Essential for 3D printing painted miniatures.
Bake Texture Transfer
POST/v1/tools/bake-texture/
Transfer textures from an original textured model onto a retopologized (lower poly) version. This is useful after manual retopology or mesh simplification when you need to preserve the visual appearance of the original on a new, cleaner mesh. The tool automatically aligns both models, generates UVs for the retopo mesh, and bakes the textures using ray casting. The original model must be in GLB or glTF format (with textures). The retopo model can be GLB, OBJ, or FBX. Output is a GLB file with the baked texture embedded. Costs 5 credits per request.
curl -X POST https://api.3daistudio.com/v1/tools/bake-texture/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"original_url": "https://example.com/highpoly.glb",
"retopo_url": "https://example.com/lowpoly.glb",
"texture_resolution": 4096,
"output_format": "glb"
}'{
"task_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"created_at": "2026-02-25T12:00:00Z"
}How It Works
The tool imports both models into the same scene, automatically centers and scales the retopo mesh to match the original, generates a fresh UV layout on the retopo mesh using smart UV projection, then bakes the textures from the original onto the retopo mesh. The baked texture is embedded into the output GLB file. The ray distance for baking is calculated adaptively based on model size to handle different scales correctly.
Input Requirements
Both models are required. The original must have textures to transfer and must be in GLB or glTF format. The retopo mesh does not need UVs or textures as they will be generated automatically.
| Input | Supported Formats | Requirements |
|---|---|---|
| Original (source) | GLB, glTF | Must have textures or materials with color data. |
| Retopo (target) | GLB, glTF, OBJ, FBX | Clean mesh to receive the baked texture. UVs are generated automatically. |
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| original_url | string (URL) | Yes | URL of the original textured model (GLB or glTF). |
| retopo_url | string (URL) | Yes | URL of the retopologized mesh (GLB, OBJ, or FBX). |
| texture_resolution | integer | No | Resolution of the baked texture in pixels (square): 1024, 2048, 4096, or 8192. Default: 4096. Higher values capture more detail but produce larger files. |
| output_format | string | No | Output format: "glb". Default: "glb". |
Checking Status
GET/v1/generation-request/<task_id>/status/
Poll this endpoint with the task_id from the submit response. When status is "FINISHED", the results array contains the GLB file with the baked texture embedded. Results expire after 24 hours.
curl https://api.3daistudio.com/v1/generation-request/YOUR_TASK_ID/status/ \
-H "Authorization: Bearer YOUR_API_KEY"{
"status": "FINISHED",
"progress": 100,
"results": [
{
"asset_url": null,
"asset": "https://storage.3daistudio.com/assets/baked_model.glb",
"asset_type": "3D_MODEL",
"thumbnail": null
}
]
}Processing Times
Texture baking typically takes 50–110 seconds. Higher texture resolutions take longer as more texels need to be baked from the original mesh.