02.jpg

The Stream Global Headquarters Experience

Crafting Resistance is a series of workshops exploring the intersection of craft, design, technology, and activism. These fields have been used throughout history as tools for political, social and personal resistance. How can we amplify these messages of resistance by combining techniques, tools, and materials from each field?

Uber’s Stream Global Headquarters Experience


The Stream is an architectural scale, interactive experience designed to foreground Uber’s core mission “to ignite opportunity by setting the world in motion.” This project is a large-scale interactive on a bespoke LED rig with an interactive tracking component. The concept is rooted around streams of content. Specifically, a stream of generative visuals is constantly filling Uber’s Mission Bay Lobby, pulling visitors deeper into the Uber HQ.

This interactive has 6 different streams of content:

  1. Interactive Glitch Stream

  2. Story Stream

  3. Places Stream

  4. Supergraphics Stream

  5. Geometries Stream

  6. Kinetic Type Stream

Credits

This is a HUSH Studios project. Lead Creative Technologist. Worked with the following team of creative technologist: Lucy Matchett, John Noonan, and Paul Houx.

Main responsibilities included hands on contribution to front-end prototyping and software development for bespoke interactive experience including RealSense tracking system, as well managing a team of 4 developers.

c++ (openFrameworks), OpenGL, RealSense tracking, openCV, unity interface

Rig & Pixel Map

The rig is made up of 3 different canvases: Hero, Overhead, and Reception. Both the Overhead and Reception canvases are LED stripes. The Hero canvas is a high-resolution LED wall.

Canvas Diagram

Pixel Map

RealSense Tracking

The Overhead and Hero canvases are both interactive. Along the length of the Overhead rig, there are 9 RealSense cameras that are stitched together to create a tracking canvas. The tracking software has a queen/bee architecture and was written in openFrameworks.

Interactive Glitch Stream

The glitch stream is a flood of color driving the interactive component of the experience.

All the visuals for the glitch stream are created generatively with C++ and glsl code that manipulates video textures to create the output.

The software was developed in two phases:

  • Tool Building: created a shader tool to manipulate different videos, showing each filter pass hooked up to variable sliders; this was used for visual prototyping with designers.

  • Integration: the appropriate classes were extracted from the tool and used in final software.

Shader Tool for Video Effects

Particle system interacting with RealSense tracking system and using shader tool software

Story & Places Stream

Story Stream includes two (2) templates (“Stories”, and “Places”) that animate on the Hero Wall along with the glitch stream which translates images from stories content into animations and moves across the Hero, Overhead and Reception screens. 

This content is CMS driven. CMS allows the client to upload new stories assets in one of the two (2) templates (“Stories”, and “Places”), and publish or deactivate content.

Supergraphics Stream

The Supergraphics Stream is a branded material. The software plays back this content via an image sequence player across the lo-res LED tubes and a video player across the Hero canvas.

Geometries Stream

The MB2 lobby will have a variety of experiences happening throughout the day. All of these experiences need to feel seamlessly integrated into one another. The Geometries Stream acts as transitional elements that activate all surfaces within the lobby installation with thematic and generative motion, creating clean transitions between all and any content.

There are three different types of geometry animations that are scheduled via the CMS. The color of each animation is also controlled via the CMS.

Kinetic Type Stream

Timely messages with three (3) animation styles to choose from; “Block”, “Scale”, and “VSS”. All animations are generative. This stream is scheduled through the CMS. The CMS allows the client to customize messaging at an allotted character count, select style of animation, and publish or deactivate Kinetic Type content

Unity visualization connected to openFrameworks software via spout