RTX Remix Get Textures
Pull the actual textures out of your RTX Remix project into ComfyUI
- context
- context
- usd_attributes
- texture_names
- textures
- masks
This is the read side of the pack's texture story. Where RTX Remix Set Texture writes a texture path onto an asset and RTX Remix Ingest Texture sends a generated image into the Toolkit, RTX Remix Get Textures goes the other way: it asks the currently open project for textures matching your criteria and hands them to ComfyUI as actual images and masks. In other words, this is the node that makes an RTX Remix project a source for your AI pipeline, not just a destination.
Mechanically it's a GET /stagecraft/textures call with filters, and the reply gets decoded into four parallel lists:
usd_attributes(STRING list) - the USD attribute paths each texture lives on. This is the handle you feed back intoSet Texturelater.texture_names(STRING list) - friendly names (the file stem).textures(IMAGE list) - the actual pixel data, loaded from disk and normalized, ready for any standard ComfyUI image node.masks(MASK list) - built from each texture's alpha channel (inverted, if the texture has alpha). Textures without alpha get a zero mask.
The filters that matter:
return_selection(BOOLEAN) - only grab textures currently selected in the Toolkit.filter_session_prims(BOOLEAN) - restrict to session prims.asset_hashes(STRING, optional) - keep only textures from these asset hashes (comma-separated).texture_types(STRING, optional) - comma-separated types likeDIFFUSE,ROUGHNESS; feed it fromRTX Remix Texture Typesto avoid typos.layer_id(STRING, optional) - scope to a single layer.exists(BOOLEAN, optional) - filter on whether the file exists on disk.
Like the other read nodes, it always re-executes (no caching), because the project's selection and contents can change in the Toolkit between runs.
Install: it ships in NVIDIAGameWorks/ComfyUI-RTX-Remix. ComfyUI Manager (search "RTX Remix") or:
cd ComfyUI/custom_nodes
git clone https://github.com/NVIDIAGameWorks/ComfyUI-RTX-Remix
# restart ComfyUI
Needs ComfyUI v0.3.48+ (V3 schema) and a running Toolkit with a project open. The pack's dependencies (requests, pillow, numpy, torch) cover the image decoding.
Where people get burned: the node raises if it finds no textures matching your criteria - empty results are an error, not a silent empty list. So make your filters match reality: check the layer ID, the texture types, and that return_selection isn't on when nothing's selected. And if textures comes back empty while usd_attributes doesn't, that's the "file vanished from disk" case - the node skips paths that don't exist. If you're building an upscale-and-replace loop, the dream pipeline is: Get Textures → process in ComfyUI → Ingest Texture → Set Texture on the matching usd_attribute, all sequenced by the context chain.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| return_selection | BOOLEAN | false | — |
| filter_session_prims | BOOLEAN | false | — |
| context | RTXRemixContext | — | |
| enable_this_node | BOOLEAN | true | — |
| asset_hashesopt | STRING | — | |
| texture_typesopt | STRING | — | |
| layer_idopt | STRING | — | |
| existsopt | BOOLEAN | false | — |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| context | RTXRemixContext | — |
| usd_attributes | STRING | — |
| texture_names | STRING | — |
| textures | IMAGE | — |
| masks | MASK | — |