Skip to content
Docs
Open Promoeyes
abstract-insertions

abstract-insertions

ABSTRACT · INSERTIONS — five rooms on one street, one camera.

Read the rig's notes
THE ARGUMENT. `promo:pug insert` puts the world of one scene into another,
to its right. Do it 4 times into ONE scene and five rooms that were each
authored alone stand 6000 apart on a street, and a single camera track
does all the framing: it settles on each room's own authored pose, slides
past it, pulls out and right with the next room growing in the frame, and
settles on that one. Nothing cuts. 24 s.

  #   room            at     x        the shot
  01  void             0.0       0   the authored pose, a slow slide
  02  bauhaus          4.0    6000   travel from void, settle, slide
  03  steel-disc       9.0   12000   travel from bauhaus, settle, slide
  04  attenuation     14.0   18000   travel from steel-disc, settle, slide
  05  colour-glass    19.0   24000   travel from attenuation, settle, slide

THE STREET. The void's 9 m floor, the steel-disc's 4.6 m one, the
colour-glass room's 4 m one — at 6000 apart nothing overlaps. Each room
brings its own lights (its ambient is dropped: the void's lights the
street); the void's renderer, post chain, background and environment serve
the whole scene, with a fog opened to 9 m so the next room is a silhouette
before the camera arrives. Every room's pose is its own authored camera,
shifted with it.

GENERATED by scripts/gen-insertions-promo.mts — edit the rooms there, not here.
Topic
scenes
Scenes
1
Kind
reference rig
//
    ABSTRACT · INSERTIONS — five rooms on one street, one camera.

    THE ARGUMENT. `promo:pug insert` puts the world of one scene into another,
    to its right. Do it 4 times into ONE scene and five rooms that were each
    authored alone stand 6000 apart on a street, and a single camera track
    does all the framing: it settles on each room's own authored pose, slides
    past it, pulls out and right with the next room growing in the frame, and
    settles on that one. Nothing cuts. 24 s.

      #   room            at     x        the shot
      01  void             0.0       0   the authored pose, a slow slide
      02  bauhaus          4.0    6000   travel from void, settle, slide
      03  steel-disc       9.0   12000   travel from bauhaus, settle, slide
      04  attenuation     14.0   18000   travel from steel-disc, settle, slide
      05  colour-glass    19.0   24000   travel from attenuation, settle, slide

    THE STREET. The void's 9 m floor, the steel-disc's 4.6 m one, the
    colour-glass room's 4 m one — at 6000 apart nothing overlaps. Each room
    brings its own lights (its ambient is dropped: the void's lights the
    street); the void's renderer, post chain, background and environment serve
    the whole scene, with a fog opened to 9 m so the next room is a silhouette
    before the camera arrives. Every room's pose is its own authored camera,
    shifted with it.

    GENERATED by scripts/gen-insertions-promo.mts — edit the rooms there, not here.

promo#abstract-insertions

  materials
    // the hardware. NOT `porcelain` (white, matte) and not a metal preset (no
    //     diffuse response — a black cutout the moment the env drops): a dark
    //     standard body that still takes light, so a phone reads as charcoal
    //     against the near-black stage instead of as a white slab.
    standard#shell(color=#26262b metalness=0.4 roughness=0.3 envmap-intensity=1.1)
    // 4 · emissive — unlit, so it is pure signal for the bloom pass to find.
    basic#emissive(color=#ffb347)
  scene#street(duration=24)
    renderer(tone_mapping=ACESFilmic exposure=1.0 shadow_map=true shadow_map_type=pcf-soft)
    camera(type=perspective fov=40 near=8.5 far=40000 position="124.2 346.74 598.8" look_at="60 200 -300")
      properties
        frame(smooth=0)
          keyframes
            // void — the authored pose, then a slow slide past it
            kf(time=0 position="124.2 346.74 598.8" look_at="60 200 -300" up="0 1 0" fov=40)
            kf(time=4 position="234.2 364.74 528.8" look_at="90 204 -300" up="0 1 0" fov=40 easing=linear)
            // void → bauhaus: a beat, out and to the right with the next room growing in frame, down onto it, slide
            kf(time=4.4 position="234.2 364.74 528.8" look_at="90 204 -300" up="0 1 0" fov=40 easing=linear)
            kf(time=6.4 position="3729.68 627.9 1429.67" look_at="4567.5 463.5 -300" up="0 1 0" fov=30 easing=easeInOutCubic)
            kf(time=7.6 position="6060 470 1030.25" look_at="6060 470 -300" up="0 1 0" fov=20 easing=easeInOutCubic)
            kf(time=9 position="6170 488 960.25" look_at="6090 474 -300" up="0 1 0" fov=20 easing=linear)
            // bauhaus → steel-disc: a beat, out and to the right with the next room growing in frame, down onto it, slide
            kf(time=9.4 position="6170 488 960.25" look_at="6090 474 -300" up="0 1 0" fov=20 easing=linear)
            kf(time=11.4 position="9756.27 567.47 1535.04" look_at="10567.5 328.5 -105" up="0 1 0" fov=30 easing=easeInOutCubic)
            kf(time=12.6 position="12147.11 287.11 918.23" look_at="12060 200 -40" up="0 1 0" fov=34 easing=easeInOutCubic)
            kf(time=14 position="12257.11 305.11 848.23" look_at="12090 204 -40" up="0 1 0" fov=34 easing=linear)
            // steel-disc → attenuation: a beat, out and to the right with the next room growing in frame, down onto it, slide
            kf(time=14.4 position="12257.11 305.11 848.23" look_at="12090 204 -40" up="0 1 0" fov=34 easing=li