ComfyUI Node

(AV) Matrix

The (AV) Matrix is the one you'll reach for

By ArrowsVisuals·Created 4 months ago·Updated 3 months ago· 3
(AV) Matrix
    • prompt
    • filename_tag
    preservation
    camera
    lighting
    atmosphere
    style
    materials
    people
    population_density
    hero_style
    scale_life
    cars
    surroundings
    enhancement
    target_model
    override
    separator.

    If you install this pack and use exactly one node, it's the (AV) Matrix. It's the whole point of the ArchViz preset system: thirteen dropdowns - preservation, camera, lighting, atmosphere, style, materials, people, population_density, hero_style, scale_life, cars, surroundings, enhancement - on a single node, plus a target_model dropdown that compiles the result into the native prompt dialect of whatever image model you're running. You pick your categories, it hands back a ready-to-paste prompt string. No generation, no API key, no GPU work; it's prompt construction for the image-to-image workflow where a sketch or screenshot becomes a high-end architectural render.

    How it works

    Every dropdown resolves to a hand-written fragment in ComfyUI/user/archviz_presets.json (auto-copied on first run; your edits survive package updates). Fragments assemble in a fixed order - preservation first because it anchors the input geometry, then camera, lighting, atmosphere, style, materials, people, scale_life, cars, surroundings, and finally your override text. That ordering is deliberate: preservation is the most important slot because it tells the model the architecture is fixed, not a suggestion. The whole library is written in positive-constraint phrasing, which is the reliable move on modern image models - describe what's there, don't lean on negative prompts.

    The genuinely clever bit is target_model. The same curated fragments compile into each model's dialect: nano_banana_edit (the default, byte-identical to the pack's v4 output - edit instructions like "preserve the input image"), nano_banana_generate (narrative prose; drops preservation and enhancement since there's nothing to edit), flux2_pro (a word-budgeted natural-prose brief that strips edit-instruction sentences), flux2_dev_structured (labeled Subject/Scene/Camera slots for Dev/Flex/Klein), gpt_image_2 (a photographer's brief with "must not drift" constraints and hype words stripped), and ideogram4_json (a structured JSON caption). Feed the same selections to a different model and you get a differently-voiced prompt - the content stays yours, the phrasing adapts.

    The inputs that matter

    • preservation - the anchor. preserve_design / preserve_with_polish for variation work; people_only_minimal_change when you only want to add figures to an already-finished render.
    • lighting, atmosphere, style, materials - your variation levers for exploring looks on the same building.
    • enhancement - a different mode of operation: refinement instructions like upscale_4k_full, fix_hands_only, or motion_blur_figures. For these, set the descriptive categories to (none); stacking enhancements in one pass over-sharpens. One clean pass beats three aggressive ones.
    • target_model - where the prompt is going. Change this instead of rewriting your selections.
    • override (optional) - free-form additions, appended last. separator (optional, default ". ").

    Outputs: prompt (the compiled string - wire into your image node's prompt slot) and filename_tag (a compact underscore slug built from your enhancement/lighting/style/people/cars picks, e.g. goldenhour_photoreal_editorial, for naming saved files).

    Installing and troubleshooting

    Same pack as the other ArchViz nodes - install once, get all four under the "ArchViz" category:

    cd ComfyUI/custom_nodes/
    git clone https://github.com/ArrowsVisuals/archviz-preset-system.git
    

    Restart ComfyUI. No dependencies beyond Python's stdlib, no model downloads. ComfyUI Manager users search "ArchViz Preset System".

    Two gotchas worth knowing. First, the pack doesn't run any model - Nano Banana Pro / Gemini Image, Flux 2, GPT Image 2 and Ideogram 4 each need their own node (the official Gemini Image node or a compatible Nano Banana node), and the closed ones need an API key and budget on top. The Matrix just writes them a better prompt. Second, don't bolt a big negative prompt onto the Matrix output and expect it to override the fragments - this pack is built on positive phrasing, and it's fighting itself if you are.

    CategoryArchViz

    Inputs (16)

    NameTypeDefaultDescription
    preservationCOMBO8 options: (none), clean_minimal, competition_polished, people_only_minimal_change, preserve_design, preserve_exactly, +2
    cameraCOMBO13 options: (none), aerial_high_overview, aerial_low_drone, aerial_oblique_45, aerial_top_down, elevated_three_quarter, +7
    lightingCOMBO13 options: (none), blue_hour_warm, dusk_first_lights, golden_hour, interior_natural, midday_clear, +7
    atmosphereCOMBO12 options: (none), aerial_perspective_strong, clear_aerial_sharp, clear_air, dramatic_clouds, humid_coastal_air, +6
    styleCOMBO10 options: (none), cinematic_anamorphic, competition_dramatic, concept_sketch_loose, digital_clean, film_warm_grain, +4
    materialsCOMBO12 options: (none), industrial_concrete_steel, mediterranean_limestone, minimalist_monochrome, precision_anodized_aluminum, premium_natural_mix, +6
    peopleCOMBO12 options: (none), afro_diaspora, east_asian, emirati, european, gulf_mixed, +6
    population_densityCOMBO5 options: (none), crowded_public, hero_with_supporting, multiple_active, single_hero
    hero_styleCOMBO7 options: (none), active_resident_lifestyle, contemplative_figure_from_behind, couple_arrival_lifestyle, elegant_man_tailored, elegant_woman_flowing_dress, +1
    scale_lifeCOMBO7 options: (none), business_active, evening_arrival, family_activity, morning_quiet, weathered_authentic, +1
    carsCOMBO8 options: (none), executive_arrival, hero_electric_modern, hero_luxury_sedan_dark, hero_luxury_sedan_silver, hero_sports_coupe, +2
    surroundingsCOMBO13 options: (none), coastal_aerial_context, coastal_distant_view, desert_aerial_context, desert_edge_natural, enhance_landscape, +7
    enhancementCOMBO12 options: (none), enhance_architecture_only, enhance_materials_textures, enhance_people_full, enhance_people_polish, enhance_vegetation_creative, +6
    target_modelCOMBO6 options: nano_banana_edit, nano_banana_generate, flux2_pro, flux2_dev_structured, gpt_image_2, ideogram4_json
    overrideoptSTRING
    separatoroptSTRING.

    Outputs (2)

    NameTypeDescription
    promptSTRING
    filename_tagSTRING