Nodes/MKRShift_Nodes/Character Direction Studio
ComfyUI Node

Character Direction Studio

A whole direction department in one node — it writes the brief, you run the sampler

By criskb·Created 7 months ago·Updated 5 months ago· 0
Character Direction Studio
    • image
    • camera_desc
    • light_desc
    • settings_out
    • positive_prompt
    • negative_prompt
    • director_prompt
    • pose_guide
    • metadata_json
    settings_json{}
    model_path
    capture_w1024
    capture_h1024
    subject_prompthero character design
    outfit_promptdetailed outfit, production-ready costume
    style_presetcinematic_photoreal
    shot_typefull body
    moodconfident
    add_quality_tagstrue
    negative_prompt_basebad anatomy, low quality, lowres, deformed

    Ask any artist who keeps losing character consistency and they'll tell you the same thing: the prompt is where it falls apart. MKRCharacterCustomizer - "Character Direction Studio" in the UI - is the node that industrializes prompt writing for character shots. You feed it 3D camera and light positions plus a handful of creative choices, and it returns a complete positive/negative prompt pair, camera and light descriptions, a pose-guide image, and a "director sheet" that lays it all out visually. It doesn't run any inference itself - it's a direction tool that hands your sampler a better brief.

    From MKRShift_Nodes by criskb. Install via ComfyUI Manager (search "MKRShift_Nodes") or git clone https://github.com/criskb/MKRShift_Nodes into custom_nodes/, restart. It ships a custom frontend (WEB_DIRECTORY) for a nicer UI, and needs no models.

    How it works

    The node interprets settings_json (a JSON bundle describing camera position, light position, and character params) against a coordinate system and distance/height/side bands. From those it derives human-readable descriptions: camera gets "low angle viewpoint, orbit 245 deg, 85mm lens," light gets "high key light, controlled fill." Then it assembles the positive prompt from your subject/outfit prompts, the chosen style_preset, shot type, mood, and optional quality tags; the negative prompt from your base plus style negatives. It renders a pose_guide image (a stick-blockout at capture_w × capture_h) and a director_sheet (pose + scene map + both prompts) as review output.

    The inputs that matter

    • settings_json (required) - camera/light/params. This is the "studio" part; it's how the node knows your lighting intent.
    • model_path (required, can be empty) - shown on the sheet for reference, so you remember which model the brief was written for.
    • style_preset - the five presets (cinematic_photoreal, editorial_fashion, stylized_anime, fantasy_concept_art, game_character_sheet) change the prompt's flavor and negatives.
    • shot_type, mood, add_quality_tags - the creative dials.

    Outputs: positive_prompt, negative_prompt, director_prompt (both, joined), camera_desc, light_desc, settings_out, pose_guide, the image (director sheet), and metadata_json recording the full setup.

    The straight talk

    Wire its prompt outputs into a standard CLIP Text Encode and you're done - this is the one node in the pack that directly feeds the sampler. Its real value is reproducibility: the same settings JSON gives the same brief every time, so your character shots stop drifting because you rewrote the prompt by hand at 2am. It won't fix identity drift by itself - for that you still want a LoRA or an edit-model workflow (see the character-consistency playbook) - but a stable, detailed prompt is the foundation that makes every other consistency tool work better.

    CategoryMKRShift Nodes/Core/Character

    Inputs (11)

    NameTypeDefaultDescription
    settings_jsonSTRING{}
    model_pathSTRING
    capture_wINT1024256–2048
    capture_hINT1024256–2048
    subject_promptoptSTRINGhero character design
    outfit_promptoptSTRINGdetailed outfit, production-ready costume
    style_presetoptCOMBOcinematic_photoreal5 options: cinematic_photoreal, editorial_fashion, stylized_anime, fantasy_concept_art, game_character_sheet
    shot_typeoptCOMBOfull body5 options: full body, three quarter, cowboy shot, waist up, close portrait
    moodoptCOMBOconfident6 options: neutral, confident, heroic, mysterious, friendly, intense
    add_quality_tagsoptBOOLEANtrue
    negative_prompt_baseoptSTRINGbad anatomy, low quality, lowres, deformed

    Outputs (9)

    NameTypeDescription
    imageIMAGE
    camera_descSTRING
    light_descSTRING
    settings_outSTRING
    positive_promptSTRING
    negative_promptSTRING
    director_promptSTRING
    pose_guideIMAGE
    metadata_jsonSTRING