Advanced Content (Mesh Upload)¶
This page documents Collada-free mesh content workflows using modern .glb / .gltf sources.
High-value content tools¶
MeshInspectGltfMeshUploadGltfAssetUploadInventoryAssetDownloadInventoryListInventoryCreateFolderInventoryMoveItemInventoryMoveFolderInventoryCopyItemInventoryLinkItem
Inspection modes¶
MeshInspectGltf supports strict and non-strict validation:
- Non-strict: reports diagnostics but still returns success when uploadable content exists.
- Strict: fails if any primitive would be skipped or if any texture ingest/transcode fails.
Prompt examples:
Inspect /workspace/models/station.glb with strict mode enabled and return full diagnostics.
Inspect /workspace/models/station.glb with strict mode disabled and summarize only the top warnings.
Upload workflow (recommended)¶
- Run strict inspection.
- Resolve geometry and texture warnings.
- Upload with final inventory name/description.
- Verify appearance in-world and iterate.
Prompt examples:
Inspect /workspace/models/bridge.glb in strict mode. If it passes, upload it as Bridge-A with description North canal bridge.
Upload /workspace/models/panel.gltf as Control Panel with description Operations room panel.
Texture ingestion behavior¶
During mesh processing:
- Existing JPEG2000 (
.jp2,.j2c,.j2k) textures are passed through. - Other common image formats (for example PNG/JPEG/TGA) are decoded and converted to JPEG2000.
- Images are normalized to power-of-two dimensions and capped at 1024x1024 before encoding.
This keeps uploaded textures compatible with typical simulator expectations.
Failure patterns and remediation¶
- Skipped primitive warnings:
- Cause: non-triangle primitive modes or invalid index ranges.
-
Fix: triangulate mesh before export and re-run strict inspection.
-
Texture ingest/transcode failures:
- Cause: unresolved URI paths, unsupported/corrupt image payloads, malformed data URIs.
-
Fix: prefer
.glbwith embedded textures or correct relative texture paths in.gltfpackages. -
Unexpected world scale:
- Cause: source scene scale mismatch.
- Fix: apply transforms in authoring tool, re-export, re-inspect.
Object lifecycle automation after upload¶
For iterative pipelines, treat upload and in-world placement as separate stages:
- Upload candidate mesh to inventory.
- Rez from inventory at a deterministic transform.
- Apply optional post-rez scale.
- Keep by taking/take-copy, or roll back by returning to owner.
Prompt examples:
Take copy of local IDs 5102,5103 into folder 2e4d6f1c-1111-2222-3333-444455556666.
Take local IDs 5102,5103 (move, not copy) into my default Objects folder.
Rez inventory item 9d4c7f0a-1111-2222-3333-444455556666 at 130,124,28 with roll 0 pitch 0 yaw 180; wait for object and select it after rez.
Return local IDs 5102,5103 to owner inventory.
Use PrimTake with takeCopy=true for non-destructive edits and takeCopy=false for move semantics.
Inventory browsing ergonomics¶
InventoryList now supports name/type/date/creator filtering and cursor pagination.
Prompt examples:
List inventory recursively from root, filter to names containing Bridge and type object, and return 100 entries.
List inventory in folder 2e4d6f1c-1111-2222-3333-444455556666 created after 2026-01-01T00:00:00Z by creator 11111111-2222-3333-4444-555555555555.
Continue the previous inventory query using cursor b2Zmc2V0OjEwMA== with page size 100.
Pagination notes:
- Pass
cursorfromNextCursorto fetch the next page. - Check
HasMoreto detect remaining entries. TotalMatchedreports total entries matching filters in the current query scope.
Inventory CRUD and organization¶
Use these tools to keep large inventories structured:
InventoryCreateFolderInventoryRenameFolder,InventoryRenameItemInventoryMoveFolder,InventoryMoveItem,InventoryMoveManyInventoryDeleteFolder,InventoryDeleteItem,InventoryDeleteManyInventoryCopyItem,InventoryLinkItem
Prompt examples:
Create folder "Project Props" under parent 2e4d6f1c-1111-2222-3333-444455556666.
Move item 9d4c7f0a-1111-2222-3333-444455556666 to folder 7a7b7c7d-1111-2222-3333-444455556666.
Copy item 9d4c7f0a-1111-2222-3333-444455556666 into folder 7a7b7c7d-1111-2222-3333-444455556666 with name Project Sign v2.
Create a link to item 9d4c7f0a-1111-2222-3333-444455556666 in folder 7a7b7c7d-1111-2222-3333-444455556666 named Sign Shortcut.
Move items 9d4c7f0a-1111-2222-3333-444455556666,0a1b2c3d-1111-2222-3333-444455556666 into folder 7a7b7c7d-1111-2222-3333-444455556666.
Gate uploads with strict mode in production
For automated pipelines, run MeshInspectGltf strict mode before MeshUploadGltf to prevent partial or degraded uploads.