Nodes/DOGMA Nodes/DOGMA v35.1 Select 2x2 Test Tiles
ComfyUI Node

DOGMA v35.1 Select 2x2 Test Tiles

Tune the settings on four tiles instead of four hundred

By axior·Created 4 months ago·Updated 3 days ago· 1
DOGMA v35.1 Select 2x2 Test Tiles
  • image
  • dac_data
  • tiles
  • test_data
  • source_patch
  • info
block_x0.50
block_y0.50

What it is

A cheap way to audition your tile settings before committing to a full high-res pass. DOGMASelect2x2TestTilesV351 takes the prepared tiling canvas and its DAC_DATA description, picks one 2x2 block of tiles anywhere you point it, and returns those four tiles as a list - so you can push them through a sampler at four steps, look at the result, and only then run the whole grid.

If you've ever run a 4x tiled upscale on a 6K canvas, tweaked one number, and waited eight minutes to find out it was worse, this node is the fix. It's not glamorous. It's the thing that makes iteration affordable.

How it works, concretely

The node needs dac_data - the tiling plan emitted by the pack's DAC prepare node, which contains the working canvas size, tile width and height, the overlap on each axis, the grid dimensions, and the computed stride. From that it derives stride_x = tile_width - overlap_x and stride_y = tile_height - overlap_y, then uses block_x and block_y (both 0.0–1.0, default 0.5) as normalized positions across the available block range.

So with a 4x4 grid, block_x = 0.0 is the leftmost pair of columns and block_x = 1.0 is the rightmost pair; the interior is where all the interesting overlap behaviour lives. Edge-aligned tiles get snapped to the canvas boundary so they never read past the end of the image.

It also computes source_patch: the bounding rectangle covering all four tiles, cropped from the source. That's your side-by-side reference - the same region before the sampler touched it. You want that on a Preview node next to the output, because "did this improve or just get shinier" is unanswerable from memory.

Inputs and outputs

  • image - the prepared high-res canvas.
  • dac_data - from the DAC prepare node. If a list of them arrives, the node silently uses the first.
  • block_x, block_y - floats 0.0–1.0, step 0.05, both defaulting to 0.5. This is the one control you'll actually touch: walk it around and sample a corner, a centre, and a busy edge.

Outputs: tiles is an IMAGE list of four, which is what makes the rest of the graph run once per tile instead of one batched call. test_data is a DOGMA_TEST_DATA dict carrying the four coordinates, the patch offsets, tile size, overlap and grid - wire it into the matching combine node to blend the four results back into one patch for inspection. source_patch is the untouched source region. info is a one-line summary: which block row/column, the four coordinates, and the patch size.

Why you'd use it rather than just running everything

Three real reasons.

First, seams show up at the edges first. If your overlap and blending settings are wrong, a 2x2 block that straddles an interior seam is where you'll see it - as a visible tonal step, a repeated texture, or a building that jogs sideways. Sampling that block tells you more than sampling a tile in the middle of a flat wall.

Second, per-tile prompts. The DOGMA tile nodes compose a different instruction per tile (the pack has tile prompt composer and per-tile VLM barrier nodes for exactly this), and the 2x2 test is how you check that those instructions are landing on the right content without paying for the full sweep.

Third, VRAM. Four tiles at 1536px is a manageable sample; a hundred of them isn't.

Install

ComfyUI Manager → DOGMA Nodes, or:

cd ComfyUI/custom_nodes
git clone https://github.com/axior/ComfyUI-DOGMA-Nodes
# restart ComfyUI

requirements.txt declares no dependencies - the pack is PyTorch and ComfyUI's own APIs - and there's nothing to download. Note the display name is "v35.1" while the class is DOGMASelect2x2TestTilesV351: in this pack, the version in the class name and the version in the label are two different labelling systems that mostly agree and sometimes don't.

Gotchas

  • It raises on a grid smaller than 2x2. If your tile plan produced a grid_x or grid_y below 2, the node errors with 2x2 test needs at least 2x2 grid. That happens when the canvas isn't much bigger than the tile - the fix is up the target scale, not in this node.
  • Tiles come out as a list, so downstream nodes need to accept lists. If you feed them into a node that expects a plain IMAGE batch, you'll get one run per tile with confusing results rather than an error.
  • There is no community documentation for this pack - zero reddit threads name it, and the README covers only the WAN VACE prep nodes and DOGMA samplers. Everything above is read off the source.
CategoryDOGMA/Semantic Detailer

Inputs (4)

NameTypeDefaultDescription
imageIMAGE
dac_dataDAC_DATA
block_xFLOAT0.500–1
block_yFLOAT0.500–1

Outputs (4)

NameTypeDescription
tilesIMAGE
test_dataDOGMA_TEST_DATA
source_patchIMAGE
infoSTRING