Nodes/VRGameDevGirl Video Enhancement Nodes/VRGDG Z-Image Workflow Runner UI
ComfyUI Node

VRGDG Z-Image Workflow Runner UI

Run the bundled Z-Image text-to-image workflow from a canvas, not a file browser

By vrgamegirl19·Created about a year ago·Updated a day ago· 742
VRGDG Z-Image Workflow Runner UI
    • status
    ◄workflow_path/tmp/ComfyUI/custom_nodes/comfyui-vrgamedevgirl/Workflows/UsedForUIDoNotTouch/text2image_zimage_API.json►
    ◄save_folderVRGDG_WorkflowRunner_Saved►
    ◄prompt►
    ◄first_pass_width1280►
    ◄first_pass_height720►
    ◄second_pass_width1920►
    ◄second_pass_height1080►
    ◄batch_size1►
    ◄use_custom_lorasfalse►
    ◄lora_count0►
    ◄ltx_two_pass_modefalse►
    ◄lora_1[none]►
    ◄first_pass_strength_10.50►
    ◄second_pass_strength_11.00►
    ◄lora_2[none]►
    ◄first_pass_strength_20.50►
    ◄second_pass_strength_21.00►
    ◄lora_3[none]►
    ◄first_pass_strength_30.50►
    ◄second_pass_strength_31.00►
    ◄lora_4[none]►
    ◄first_pass_strength_40.50►
    ◄second_pass_strength_41.00►
    ◄lora_5[none]►
    ◄first_pass_strength_50.50►
    ◄second_pass_strength_51.00►
    ◄lora_6[none]►
    ◄first_pass_strength_60.50►
    ◄second_pass_strength_61.00►
    ◄lora_7[none]►
    ◄first_pass_strength_70.50►
    ◄second_pass_strength_71.00►
    ◄lora_8[none]►
    ◄first_pass_strength_80.50►
    ◄second_pass_strength_81.00►
    ◄lora_9[none]►
    ◄first_pass_strength_90.50►
    ◄second_pass_strength_91.00►
    ◄lora_10[none]►
    ◄first_pass_strength_100.50►
    ◄second_pass_strength_101.00►
    ◄lora_11[none]►
    ◄first_pass_strength_110.50►
    ◄second_pass_strength_111.00►
    ◄lora_12[none]►
    ◄first_pass_strength_120.50►
    ◄second_pass_strength_121.00►
    ◄lora_13[none]►
    ◄first_pass_strength_130.50►
    ◄second_pass_strength_131.00►
    ◄lora_14[none]►
    ◄first_pass_strength_140.50►
    ◄second_pass_strength_141.00►
    ◄lora_15[none]►
    ◄first_pass_strength_150.50►
    ◄second_pass_strength_151.00►
    ◄lora_16[none]►
    ◄first_pass_strength_160.50►
    ◄second_pass_strength_161.00►
    ◄lora_17[none]►
    ◄first_pass_strength_170.50►
    ◄second_pass_strength_171.00►
    ◄lora_18[none]►
    ◄first_pass_strength_180.50►
    ◄second_pass_strength_181.00►
    ◄lora_19[none]►
    ◄first_pass_strength_190.50►
    ◄second_pass_strength_191.00►
    ◄lora_20[none]►
    ◄first_pass_strength_200.50►
    ◄second_pass_strength_201.00►

    Z-Image is the pack's enhancement engine of choice, and the author bundles a tuned text-to-image workflow template for it. Normally, using it means loading a JSON workflow from the pack's Workflows/ folder, wiring it, and running it - fiddly, and easy to get wrong. VRGDG Z-Image Workflow Runner UI is the shortcut: a canvas UI that runs that bundled Z-Image text-to-image template without you opening the workflow file at all. You set prompts and sizes in the node, it runs the template in the background, and your images land in a save folder.

    Given the pack's heavy use of Z-Image as a second-pass enhancer, this is the node you'd reach for when you just want clean Z-Image outputs - or to generate the base images your video pipeline will later animate - without maintaining a separate workflow.

    The inputs that matter

    • workflow_path - points at the bundled template (Workflows/UsedForUIDoNotTouch/text2image_zimage_API.json by default). If you've installed the pack elsewhere than the default /tmp/ComfyUI/... path in the default, update this to your real install location.
    • save_folder (default VRGDG_WorkflowRunner_Saved) - where generations go.
    • prompt - your text prompt. Z-Image is bilingual; the community consistently reports Chinese prompts give a noticeable adherence boost, so keep that in your back pocket here.
    • first_pass_width/height (defaults 1280×720) and second_pass_width/height (defaults 1920×1080) - the two-pass structure: generate at the first size, refine/upscale at the second. Z-Image's native ceiling is ~2MP, so a two-pass approach keeps quality up at deliverable sizes.
    • batch_size (default 1) - images per run.
    • ltx_two_pass_mode - toggle for when you're generating start images destined for an LTX video workflow and want the pass structure to match LTX's expectations.
    • use_custom_loras + lora_count + lora_1…lora_20 with per-LoRA first_pass_strength / second_pass_strength - the LoRA stack. Each lora slot has a model picker plus separate strengths for the two passes (defaults 0.5 first, 1.0 second). One honest caveat from the community: stacking many Z-Image LoRAs tends to collapse quality - two or three well-chosen ones beat eight at once.

    The output

    A single status string. This node's real output is the images it writes to save_folder, so status is mostly a handshake for your workflow - read it to confirm the run finished, then grab the files from the folder.

    Install and gotchas

    Standard pack install (Manager → search vrgamedev, restart, hard-refresh - the runner UI is JS). Two things will bite you:

    1. The default workflow_path is an absolute path that assumes the pack lives at a specific location. If your ComfyUI isn't at that path, update it or the runner can't find the template. This is the single most common failure with this node.
    2. You need a Z-Image checkpoint on hand. The runner drives a template, but the template still needs the model. Grab Z-Image Turbo (or Base) plus its Qwen3-4B text encoder if your setup doesn't auto-resolve them, and note the Base-vs-Turbo settings difference: Turbo runs ~8 steps at CFG 1, Base wants 25–50 steps at CFG 3–5.
    CategoryVRGDG/UI

    Inputs (71)

    NameTypeDefaultDescription
    workflow_pathSTRING/tmp/ComfyUI/custom_nodes/comfyui-vrgamedevgirl/Workflows/UsedForUIDoNotTouch/text2image_zimage_API.json—
    save_folderSTRINGVRGDG_WorkflowRunner_Saved—
    promptSTRING—
    first_pass_widthINT128064–4096—
    first_pass_heightINT72064–4096—
    second_pass_widthINT192064–4096—
    second_pass_heightINT108064–4096—
    batch_sizeINT11–16—
    use_custom_lorasBOOLEANfalse—
    lora_countINT00–20—
    ltx_two_pass_modeBOOLEANfalse—
    lora_1COMBO[none]1 options: [none]
    first_pass_strength_1FLOAT0.50-100–100—
    second_pass_strength_1FLOAT1.00-100–100—
    lora_2COMBO[none]1 options: [none]
    first_pass_strength_2FLOAT0.50-100–100—
    second_pass_strength_2FLOAT1.00-100–100—
    lora_3COMBO[none]1 options: [none]
    first_pass_strength_3FLOAT0.50-100–100—
    second_pass_strength_3FLOAT1.00-100–100—
    lora_4COMBO[none]1 options: [none]
    first_pass_strength_4FLOAT0.50-100–100—
    second_pass_strength_4FLOAT1.00-100–100—
    lora_5COMBO[none]1 options: [none]
    first_pass_strength_5FLOAT0.50-100–100—
    second_pass_strength_5FLOAT1.00-100–100—
    lora_6COMBO[none]1 options: [none]
    first_pass_strength_6FLOAT0.50-100–100—
    second_pass_strength_6FLOAT1.00-100–100—
    lora_7COMBO[none]1 options: [none]
    first_pass_strength_7FLOAT0.50-100–100—
    second_pass_strength_7FLOAT1.00-100–100—
    lora_8COMBO[none]1 options: [none]
    first_pass_strength_8FLOAT0.50-100–100—
    second_pass_strength_8FLOAT1.00-100–100—
    lora_9COMBO[none]1 options: [none]
    first_pass_strength_9FLOAT0.50-100–100—
    second_pass_strength_9FLOAT1.00-100–100—
    lora_10COMBO[none]1 options: [none]
    first_pass_strength_10FLOAT0.50-100–100—
    second_pass_strength_10FLOAT1.00-100–100—
    lora_11COMBO[none]1 options: [none]
    first_pass_strength_11FLOAT0.50-100–100—
    second_pass_strength_11FLOAT1.00-100–100—
    lora_12COMBO[none]1 options: [none]
    first_pass_strength_12FLOAT0.50-100–100—
    second_pass_strength_12FLOAT1.00-100–100—
    lora_13COMBO[none]1 options: [none]
    first_pass_strength_13FLOAT0.50-100–100—
    second_pass_strength_13FLOAT1.00-100–100—
    lora_14COMBO[none]1 options: [none]
    first_pass_strength_14FLOAT0.50-100–100—
    second_pass_strength_14FLOAT1.00-100–100—
    lora_15COMBO[none]1 options: [none]
    first_pass_strength_15FLOAT0.50-100–100—
    second_pass_strength_15FLOAT1.00-100–100—
    lora_16COMBO[none]1 options: [none]
    first_pass_strength_16FLOAT0.50-100–100—
    second_pass_strength_16FLOAT1.00-100–100—
    lora_17COMBO[none]1 options: [none]
    first_pass_strength_17FLOAT0.50-100–100—
    second_pass_strength_17FLOAT1.00-100–100—
    lora_18COMBO[none]1 options: [none]
    first_pass_strength_18FLOAT0.50-100–100—
    second_pass_strength_18FLOAT1.00-100–100—
    lora_19COMBO[none]1 options: [none]
    first_pass_strength_19FLOAT0.50-100–100—
    second_pass_strength_19FLOAT1.00-100–100—
    lora_20COMBO[none]1 options: [none]
    first_pass_strength_20FLOAT0.50-100–100—
    second_pass_strength_20FLOAT1.00-100–100—

    Outputs (1)

    NameTypeDescription
    statusSTRING—