H3 Studio • Resolution Preset
Picking an H3 canvas without doing the math
- source_image
- width
- height
- resolution_info
The boring-but-necessary node. H3 needs its generation canvas aligned and roughly inside its native pixel area, and if you don't want to think about megapixels and grid multiples, H3StudioResolutionPreset is the version that does the thinking for you. Pick an aspect ratio, pick a named resolution profile, and it hands back clean width and height integers.
The aspect_ratio dropdown covers the common shapes - 1:1, 4:5, 3:4, 2:3, 9:16, 16:9, 3:2, 4:3, 21:9 - plus source image, which copies the ratio from an image you connect to source_image. That one has a nice failure mode: it errors early with an actionable message if you pick it without connecting an image, instead of crashing deeper in the graph. That's the kind of small courtesy that separates a maintained pack from a weekend script.
The resolution ladder
resolution_profile is the part that matters. The eight choices are named by intent rather than raw numbers:
- fast preview | 0.40 MP and balanced | 0.70 MP - quick test renders.
- high | 0.90 MP and native detail | 0.98 MP - the sweet spot. H3's native area is ~768×1344, so this is where the model is most at home.
- high-res | 2.00 MP, ultra | 4.00 MP, ultra+ | 8.00 MP - the experimental ladder. The tooltip is blunt about it: higher profiles increase VRAM/RAM and decode cost, and H3's learned detail does not necessarily scale up with pixels.
- custom megapixels - uses the
custom_megapixelsfloat.
There's also limit_to_native_area (default off), which conservatively caps the result to approximately H3's native 768×1344 pixel area even if you picked a high profile - the safety valve if you're browsing the big end of the ladder and want the ratio without the memory bill.
When to reach for it
If you're building a workflow that mostly wants "a 1:1 image at good quality," this is the node. It's the no-thought version of the Advanced Resolution calculator, and it returns the same three outputs (width, height, resolution_info) so you can swap one for the other without rewiring. Where it falls short is precision: it can't do exact custom pixel dimensions the way the advanced node can. For that, use H3 Studio · Advanced Resolution.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/thaakeno/ComfyUI-MiniMax-H3-Studio.git
cd ComfyUI-MiniMax-H3-Studio
python -m pip install -r requirements.txt
Restart and hard-refresh the frontend. No extra dependencies beyond the pack. My default advice: stay on native detail | 0.98 MP until you've seen what H3 actually does at higher resolutions - the pack's own README calls the big-canvas paths experimental, and it's right.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| aspect_ratio | COMBO | Choose a preset ratio or use "source image" to copy the connected image ratio. | |
| resolution_profile | COMBO | native detail | 0.98 MP | Target pixel area. Higher profiles increase VRAM/RAM and decode cost; H3 learned detail does not necessarily scale proportionally. |
| source_imageopt | IMAGE | Required only when aspect_ratio is "source image". | |
| custom_megapixelsopt | FLOAT | 2.00.1–64 | Used only when resolution_profile is "custom megapixels". |
| limit_to_native_areaopt | BOOLEAN | false | Conservatively caps the result to approximately H3's native 768×1344 pixel area. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| width | INT | Preset-derived canvas width in pixels, rounded to H3's 32-pixel grid. |
| height | INT | Preset-derived canvas height in pixels, rounded to H3's 32-pixel grid. |
| resolution_info | STRING | Human-readable profile, actual megapixels and native-area warning summary. |