buildnotes Example 1 of 3 · Sunny

Walk through any room, floor or project in a looping video

One export turns a room, a floor or a whole project into a 1080p loop that tours it for you. A small plan in the corner shows where the camera stands.

You have a plan. Your customers, your dealers and your own teammates need to see it. Most of them shouldn't have to open Sunny and steer a 3D view to do that. Walkthrough videos are for them. Export a room, a floor or a whole project, and the browser records a looping 1080p tour of it. A small plan in the corner shows where the camera stands. The clip is saved with the project and plays on its share link. It also downloads as an ordinary MP4 for a chat or a deck.

01A camera that plans its own shots

You don't set up any shots. The room decides them: its size, where the furniture sits, and which corner gives the best view at eye level. That corner is the one farthest from the main group of furniture. From there, the group sits in the frame, not in front of the lens.

Every room video makes the same four moves:

Each move is a chapter. The share-page player marks the chapters on its seek bar, and the downloaded MP4 carries them too. A room video runs 16.5 seconds and comes to about 12 MB.The moves have fixed lengths, so every room video is the same length.

The camera path of a room walkthrough, drawn over the room's plan Seen from above. The camera starts high outside the room's front-right corner, orbits round to the back-right, comes down into the back-right corner at eye level and looks across the room, rises to straight above the centre for the plan shot, and returns to where it started. Reception Lounge 1Orbit6.5 m up, 0–5 s 2Glide down5–7.5 s 3Eye level, 1.5 m7.5–10.5 s 4Plan13–14.5 s 5Back to frame one14.5–16.5 s
Fig. 1. The camera's path through the Reception Lounge in our demo project, seen from above. The path comes from the shot planner itself; the dot moves on the clip's own clock.

02The plan in the corner goes where the clip goes

Halfway through a walkthrough, at eye level, it is hard to tell which corner you're standing in. So each frame carries a small plan of the room or the floor. A dot marks where the camera stands, and a wedge shows what it sees.

The plan is drawn into the frames themselves, not over the video by the player. A plan drawn by the player would exist only on the share page. Drawn into the frames, it is in the downloaded file, in a chat preview, and anywhere else the MP4 is played.

It stays out of the way when it has nothing to add. It is hidden under the opening title, so the video's poster image is clean. It steps aside during the overhead shot, when the whole picture is already the plan. The wedge has a fixed length, a little over a third of the room's diagonal. A cone that reached the far walls was lost in the eye-level shot, where the wide lens takes in most of the room.The plan is on by default. Turn off "Include mini-map" before you record to leave it out.

A video frame at eye level in the Boardroom of Meridian HQ's Level 4: sofas, armchairs and a side table, a caption chip reading Boardroom 6.4 × 4.8 m in the lower left, and a small floor plan in the top-right corner with the Boardroom tinted blue and a blue dot and wedge in its top-left corner.
  1. The shot. Drawn by the same 3D view you see on the page, at 1920 × 1080 and 30 frames a second.
  2. The mini-map. The floor's plan as a plain line drawing, in the corner away from the caption, at most a quarter of the frame's height.
  3. The room in shot is tinted, so on a floor tour you can see which room you're in.
  4. The camera. A dot where it stands and a wedge for what it sees. Both move with every frame.
  5. The caption names the room and its size.
Fig. 2. One frame of a floor tour, at eye level in the Boardroom. Point at a number to read its note.

03Floors and projects, one room after another

A floor tour opens on the whole floor, then visits each room in turn. Each visit is a look from above, a descent to eye level, a short look around, and back out. Each room is a chapter, and the plan in the corner tints the room in shot. A project tour plays each floor's tour in turn. Each floor opens on a title card with its name, room count and area.

The floor view keeps every wall standing, and the camera comes down into each room from outside it. Left alone, it flies straight through the corner walls on the way down. So as the camera descends, the walls within a few metres of it are cut down to just below its eye line. They stand back up over its last 0.3 m into the room. A door or window in a lowered wall is cut at the same height. The camera stops half a metre in from the corner, clear of both walls.

Before · coming downFloor tour descending toward the Boardroom from outside its corner, with its full-height walls in the way.
Before · inside the wallThe next frame: the camera is inside the corner wall, and the shot is a grey wall face.
After · coming downThe same descent with the corner walls lowered near the camera, so the room stays in view.
After · nearly inThe camera passes over the lowered wall into the room; the furniture is in view.
Fig. 3. Coming down into the Boardroom on Level 4, before and after the walls near the camera were lowered. The lamp in the way is the next chapter.

A tour has a length limit, and when a floor doesn't fit, rooms are left out before the visits are rushed.

In our demo project, Meridian HQ, the tour of Level 4's four rooms runs 44 seconds. The project tour covers its two furnished floors in 79 seconds.

04Nothing between the camera and the room

The eye-level shot stands in the corner farthest from the furniture. In a real room, that corner often holds a floor lamp or a plant, and the piece then fills the foreground for the whole look-around. Two rooms in our own demo project had this problem.

While a video records, anything that blocks the camera fades out:

Nothing past halfway to what the camera is looking at ever fades, so the subject of the shot stays. The fade follows the camera smoothly, so a piece never pops in or out. The lamp fades as the camera comes down and returns as it rises. Only the video changes; the room stays as you left it.

BeforeEye-level frame from the back-left corner of a room: a black floor lamp stands right in front of the camera and covers the middle of the shot.
NowThe same frame with the lamp faded out: the sofas, armchairs, coffee table, sideboard and door are all clear.
Fig. 4. The same eye-level frame, before and after blocking pieces fade.

The other option was to stop choosing corners with a tall piece in them. With the fade in place, the camera can keep the corner that frames the room best.

05Recorded in your browser

The browser tab you already have open makes the video, from the same 3D view you see on the page. It encodes the MP4, uploads it, and saves it with the room, floor or project.

Each frame is drawn on the clip's own clock, not recorded off the screen. The recorder draws frame one, then the frame one-thirtieth of a second later, and so on, and encodes each one. A slow computer makes the same smooth video, only more slowly. A fast one can finish well before the clip would have played. If you switch to another tab, recording pauses until you come back.On one development machine, the 79-second Meridian HQ tour took about 11 seconds to record.

To record your own:

Anyone who can edit a room or a floor can record its video; project tours come from the team that owns the project, not from collaborators it invited. The option appears in browsers that can encode 1080p H.264 video. Your newest video then plays on the share link, for everyone working with you on the project.

This post is a buildnotes example

The same story in 52 seconds

buildnotes wrote this post from the pull requests behind one Sunny feature, then cut the video from the post: every word, number and screenshot in it comes from the page above.

Before and after, side by sideuploads.sh · post and 47 seconds video Weekly digestsRelease Notes Index · post and one minute video