ComfyUI Node
kubakub frame in frame
Opens the facade's windows onto rooms, images or a shared world behind the wall, and adds 'parasites' sticking out towards the audience, all in the viewer's perspective. Every region whose plan has fif_depth_m (metres, > 0 behind the facade, < 0 in front) becomes a frame seen from the viewer: fif_source = generate draws the perspective guide (feed the image to the region sampler, denoise ~0.95, reference self), media corner-pins one of your images onto the back wall, world shows the world image behind the facade (the same world through every window). Side walls of media / world frames are shaded in the content's colour. Plan example: [W_F1_*] fif_depth_m = 3 / fif_source = media.
kubakub frame in frame
- plan
- viewer
- matrix
- media
- world
- image
- plan
- area
- generate
- back
- walls
- shadow
- frames_json
- report
- regions
◄shadow_strength0.45►
◄shadow_angle_deg60►
◄shadow_length0.70►
◄wall_level0.70►
◄window_hulltrue►
◄media_names►
Categorykubakub/2d/generate
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| plan | KUBA_PLAN | region plan with fif_depth_m / fif_source / fif_media per region. | |
| viewer | KUBA_VIEWER | From kubakub audience viewpoint: where the audience stands. | |
| matrix | IMAGE | The matrix (the full projection image at delivery size) the frames are drawn into. | |
| shadow_strength | FLOAT | 0.450–1 | Parasites (fif_depth_m < 0) cast a shadow on the facade; 0 = none. |
| shadow_angle_deg | FLOAT | 60-180–180 | Direction the shadow falls in the facade plane: 0 right, 90 down, 180 left. |
| shadow_length | FLOAT | 0.700–10 | Shadow length per metre the parasite sticks out (1 = light at 45 deg). |
| wall_level | FLOAT | 0.700–2 | Brightness of the side walls of media / world frames. |
| window_hull | BOOLEAN | true | On: a frame made of several parts (glass panes) is one opening, the gaps (mullions) stay in front. Off: the largest part only. |
| mediaopt | IMAGE | Images for fif_source = media (a batch; cover-fitted to each back wall). | |
| media_namesopt | STRING | One name per media image, for fif_media = <name>. Or use indices. | |
| worldopt | IMAGE | The shared world behind the facade (stretched to the matrix: through the viewer projection it maps 1:1 onto the facade). |
Outputs (10)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | The matrix with all frames; generate frames carry the guide. |
| plan | KUBA_PLAN | The plan for the region sampler: every parasite is a new region '<name>_out' (frame + walls + front face) with the frame's settings. |
| area | MASK | All frame pixels. |
| generate | MASK | Frames the region sampler should paint (fif_source = generate). |
| back | MASK | Back walls (rooms) and front faces (parasites). |
| walls | MASK | Side walls. |
| shadow | MASK | Where parasites darken the facade. |
| frames_json | STRING | Per frame: depth, source, scale, outline, back_quad (corner pin). |
| report | STRING | The frames with their depth, source and scale. |
| regions | KUBA_REGIONS | The regions of the plan output, with the '<name>_out' regions of the parasites: for masks, previews and other nodes that take regions. Without parasites these are the plan's own regions. |