Nodes/ComfyUI-ArchAi3d-Qwen/ArchAi3D_Qwen_Person_Cinematographer
ComfyUI Node

ArchAi3D_Qwen_Person_Cinematographer

A film set for one — Person Cinematographer directs the camera around a character

By amir84ferdos·Created 11 months ago·Updated 5 months ago· 70
ArchAi3D_Qwen_Person_Cinematographer
    • prompt
    • system_prompt
    • multi_frame_prompts
    • frame_count
    • preset_description
    • technical_notes
    presetascendra_man_threatening
    scene_context
    movementorbit_right
    orbit_angle45
    distancemedium
    angleeye_level
    emotionneutral
    emotion_intensitymoderate
    eyesat_camera
    eye_expressionnormal
    posestanding_neutral
    lightingfront_lighting
    moodneutral_balanced
    multi_frame_modefalse
    steps8
    debug_modefalse

    ArchAi3D_Qwen_Person_Cinematographer is the pack's "direct the shot" node for people, and it has the most intimidating input list in the whole set - emotion, eyes, pose, lighting, mood, orbit angle, distance - until you notice the default preset is a thing called ascendra_man_threatening and realize this thing comes with cinematic scenarios pre-built. The ASCENDRA presets are named little film moments; pick one and a wall of dropdowns configures itself.

    Which is exactly the pitch: a cinematographer in a box for Qwen-Edit. It moves the camera around a character (orbit is the headline movement, with orbit_angle up to 360°) while the generated system prompt works to keep the character's face, clothes, hairstyle and core pose intact - the hard problem for any edit model, and the one Qwen-Edit is honestly weakest at without help.

    The inputs that matter

    The full list is genuinely long (emotion with 20 options, eyes with 17, pose with 25+, 8 lighting setups, 9 moods). You will not touch most of it. What matters:

    • preset - the cinematic scenarios, ascendra_man_threatening by default. This is the "why did I install this" feature: one click, done.
    • scene_context - the character and setting ("hooded man in dark jacket on train platform at night"). This is the input that carries most of the quality.
    • movement + orbit_angle - camera path and how far it travels. Orbit is the most reliable movement for Qwen, per the pack's research.
    • multi_frame_mode + steps - for 360° turnarounds or emotion cycles. Same chain-edits pattern as the rotation nodes: each frame is a full Qwen-Edit pass.

    Outputs: prompt and system_prompt (the two you wire into the encoder), plus multi_frame_prompts, frame_count, preset_description, and a technical_notes string that gives tips for the selected shot - a nice touch you don't get on the other camera nodes.

    How it works

    Underneath, it assembles a director-style instruction - movement, angle, emotion, eye direction, pose, lighting, mood - into one sentence for the edit model, wrapped with a system prompt that tells the model it's a professional cinematographer preserving the actor's identity across the camera move. Identity preservation is the load-bearing part: Qwen-Edit re-emits the whole frame, so without explicit "keep the face identical" language, your character becomes someone else between angles.

    Installing it

    Inside ComfyUI-ArchAi3d-Qwen by Amir Ferdos (ArchAi3d):

    # ComfyUI Manager: search "ArchAi3d Qwen"
    cd ComfyUI/custom_nodes
    git clone https://github.com/amir84ferdos/ComfyUI-ArchAi3d-Qwen.git
    cd ComfyUI-ArchAi3d-Qwen
    pip install -r requirements.txt
    

    Restart. You supply the Qwen-Image-Edit model (GGUF-quantized for consumer VRAM).

    Common issues

    • Faces drift. The system prompt helps, but the KB and the community agree: Qwen-Edit struggles most with faces it hasn't seen in training. For a character that must stay identical, expect to inpaint the face back afterward. Strict identity work is still "inpaint a face back in" territory.
    • The model may move the person, not the camera. When people are in frame, Qwen sometimes re-poses them instead of orbiting the camera. Centered subject, short orbit angles, and the system prompt are your levers.
    • Multi-frame chains drift. Each frame builds on the last; errors compound. Regenerate from the source image rather than the previous output if a sequence wanders.

    It's the most "fun" node in the pack - the preset list alone invites experimentation - and it's the right tool for character-focused camera moves, with the honest caveat that identity preservation is prompt-assisted, not guaranteed.

    CategoryArchAi3d/Camera/Person

    Inputs (16)

    NameTypeDefaultDescription
    presetCOMBOascendra_man_threateningSelect cinematic preset or 'custom' for manual control. ASCENDRA presets included!
    scene_contextSTRINGDescribe the character and scene. Example: 'hooded man in dark jacket on train platform at night'
    movementCOMBOorbit_rightCamera movement type. Orbit = rotate around character (most important!)
    orbit_angleINT451–360Angle for orbit movement (45°, 90°, 180°, 360°)
    distanceCOMBOmediumCamera distance from subject
    angleCOMBOeye_levelCamera angle. Low=powerful, high=vulnerable
    emotionCOMBOneutralCharacter emotion/expression (20 options)
    emotion_intensityCOMBOmoderateEmotion intensity level
    eyesCOMBOat_cameraWhere character is looking (17 options)
    eye_expressionCOMBOnormalEye expression modifier
    poseCOMBOstanding_neutralCharacter pose and body language (25+ options)
    lightingCOMBOfront_lightingLighting style (8 professional setups)
    moodCOMBOneutral_balancedScene mood and atmosphere (9 options)
    multi_frame_modeBOOLEANfalseGenerate multi-frame sequence (360° turnaround, emotion cycle, etc.)
    stepsINT82–24Number of frames for sequence (8=standard, 12=detailed, 24=ultra-smooth)
    debug_modeBOOLEANfalsePrint detailed prompt information to console

    Outputs (6)

    NameTypeDescription
    promptSTRINGGenerated cinematographer prompt
    system_promptSTRING⭐ Professional cinematographer system prompt
    multi_frame_promptsSTRINGMulti-frame sequence prompts (if multi_frame_mode=True)
    frame_countINTNumber of frames (1 for single, or steps for sequence)
    preset_descriptionSTRINGDescription of selected preset
    technical_notesSTRINGTechnical notes and tips for this shot