tm_render_image
Render a still preview image of the model at a specified resolution by pulling the APS Model Derivative thumbnail (capped at 800x800 by the APS endpoint). Also resolves the camera_preset against model metadata to identify which 3D view it maps to, and applies any stored environment config from tm_set_environment for reference.
When to use: when you need a quick visual sanity-check of an imported model (e.g. 'show me what Tower A looks like'), to preview a specific named view before committing to a full UE/Twinmotion render, or to embed a low-res preview in a chat/report. Pair with tm_list_scenes first to discover valid view names/GUIDs. When NOT to use: not for production-quality renders (APS thumbnails are low-res and raster-only; for cinematic output use Unreal Engine Movie Render Queue after FBX/USD export), not for arbitrary custom camera angles (only named views from the source file are resolvable — there is no runtime camera placement API here), not for 2D sheet exports (use tm_list_scenes to find 2D roles and fetch directly). APS scopes required: viewables:read data:read. Hits Model Derivative thumbnail + metadata endpoints only. Rate limits: APS default ~50 req/min per app per endpoint. Thumbnail endpoint is usually fast (<2s) once the model has translated; if called while status='inprogress' it returns no thumbnail. Do not loop-poll this tool — poll the manifest via tm_set_environment or tm_list_scenes instead. Errors: 401/403 = token/scope; 404 = URN not found or thumbnail not yet generated (model still translating — retry after manifest reports success); 409 = n/a; 422 = n/a; 429 = back off 30s; 5xx = APS upstream. Side effects: NONE (read-only on APS). Reads KV env_config_. Writes a row to usage_log. Idempotent.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| quality | No | Quality label — metadata only, since APS thumbnails have fixed quality. Use 'cinematic' as an intent signal that the operator should do a post-export UE render instead. | |
| project_id | Yes | Base64-URL-safe URN of the translated model (from tm_import_rvt). Model must have reached manifest.status='success' or at least have a thumbnail derivative available. | |
| resolution | No | Requested output resolution. Note: APS thumbnail endpoint hard-caps at 800x800 — selecting 1920x1080 will be clamped to 800x800. For true HD/4K renders, export FBX/USD and render in UE Movie Render Queue. | |
| camera_preset | No | View name (e.g. '3D View 1', '{3D}', 'Perspective - Lobby') or metadata GUID to render from. Discover valid values via tm_list_scenes. If omitted or unmatched, the first 3D view is used. Custom ad-hoc camera placements are not supported — only views baked into the source file. |