๐๏ธ HiTem3D 3D Preview
Spin your GLB around in the browser before you even open Blender
- preview_html
- preview_file_path
- preview_url
You just spent credits generating a 3D model and don't want to open a heavyweight DCC tool just to check whether the back of it looks like a melted candle. The HiTem3D 3D Preview node builds an interactive HTML viewer - a Three.js scene with orbit controls - from your downloaded model file, so you can spin, zoom, and eyeball the mesh in a browser tab before committing to anything.
It's the payoff node of the pack: Generator โ Downloader โ Preview is the whole loop, and this is where you actually see what you paid for. It takes a model_path (the string from the HiTem3D Downloader) and produces a self-contained HTML preview.
How it works
The node reads your model file and embeds it into an HTML page that loads Three.js from a CDN, with a loader picked to match the file type (GLTF/OBJ/STL/FBX loaders all included). For files under ~10MB it base64-embeds the model directly into the HTML for a fully interactive preview. Bigger files get a smarter tier of handling - medium files get an "optimized" preview, large ones (25โ100MB) a lighter "large file" preview, and anything over 100MB a placeholder page that tells you the file's too big to preview inline.
The viewer itself has a dark, clean panel with width/height dimensions, a background_color picker (four presets), auto_rotate on by default, and toggles for show_wireframe and show_grid. Great for a quick turntable look at your mesh.
The three outputs
preview_html- the full HTML string. Feed it into the HTML Previewer node if you want it inside ComfyUI's floating panel, or write it out to open directly.preview_file_path- the saved.htmlfile, tucked under ComfyUI's output directory inhitem3d/previews/. Note it's returned as a friendly message string, not a plain path.preview_url- afile://URL pointing at that saved page, for opening in your default browser.
Wiring it up
HiTem3DDownloaderNode โ model_path โ HiTem3DPreviewNode โ preview_html โ HTMLPreviewer
That last hop is what the pack's more polished example workflows do - it gets the preview into the live HTML panel with auto-refresh, which is nicer than juggling browser tabs. The examples/ folder has a complete version with history tracking too.
Installing
Via ComfyUI Manager (search "ComfyUI HiTem3D Integration"), or:
cd ComfyUI/custom_nodes
git clone https://github.com/GeekatplayStudio/comfyui-hitem3d
cd comfyui-hitem3d
pip install -r requirements.txt
Restart ComfyUI. No extra models or heavy dependencies.
Where people get burned
- Preview looks blank. The Three.js scripts load from cdnjs/jsdelivr, so you need an internet connection when you open the page. Fully offline machines get an empty scene.
preview_urlisfile://, nothttp://. Opening it loads the page from disk, which is exactly why the browser needs internet for the CDN scripts - and why the HTML Previewer route exists if you'd rather serve it over ComfyUI's HTTP server.- Huge models. Anything over ~100MB gets a placeholder rather than an interactive preview. Remesh or decimate first; this is a preview tool, not a viewer for 2-million-face monsters.
- Unsupported format. The node accepts
.obj,.glb,.gltf,.stl, and.fbx- a.usdzfrom the Generator's format dropdown won't preview here.
It's the fastest way to sanity-check a generation before you commit it to disk and load it into a real 3D app. Not a replacement for Blender - just a much quicker way to find out whether the model's worth opening Blender for.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| model_path | STRING | โ | |
| widthopt | INT | 512256โ2048 | โ |
| heightopt | INT | 512256โ2048 | โ |
| background_coloropt | COMBO | #808080 | 4 options: #000000, #FFFFFF, #808080, #f0f0f0 |
| auto_rotateopt | BOOLEAN | true | โ |
| show_wireframeopt | BOOLEAN | false | โ |
| show_gridopt | BOOLEAN | true | โ |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| preview_html | STRING | โ |
| preview_file_path | STRING | โ |
| preview_url | STRING | โ |