Cinema4D view of our extended media types and UI

Video Prototyping for Mixed Reality (MR)

Video Composing with Cinema 4D and Adobe After Effects for Hololens Interaction Concept Visualization

One of the challenging parts for presenting mixed reality concepts is the storytelling via visualizing proposed interaction scenarios. In Moment, we tackled this challenge by creating our own workflow for visualizing 3D MR UI as well as other media assets to be shown in our concept video. Although it is not perfect, I believe our workflow can be useful for other mixed reality designers, who want to show their concepts in their contexts, but lack of technical skills such as C# or working with Unity for Hololens app development. One of the drawbacks of our workflow was that we were almost running out of time for rendering our all interaction scenes, so it is time-consuming since we are importing 3D assets, environments to After Effects and render through it.

Before our final concept video, we have watched and checked many different ways of mixed reality prototyping such as using HoloSketch, Unity-Holokit, Cinema 4D, etc. One of the repeated suggestions for developing holograms (3D assets for MR) was to use Cinema 4D. So we give it a try. While searching for existing techniques, we have seen that Cinema 4D (C4D) is actually very useful since it has almost seamless connection with Adobe After Effects (AE). After an extensive research on how we can use AE and C4D to show our finger-based interactions, we have developed this 5 step workflow for our video protoype:

  1. Motion Tracking with Adobe After Effects to track our figure’s fingers

2. Importing Motion Tracking Data to Cinema 4D for Merging the 3D Content without real-world perspective

3. Camera Calibration with Cinema 4D to adjust the 3D environment to the real-world perspective

4. Creating a sense of depth with masking fingers/body with AE Rotobrush tool.

After streamlining this workflow in our minds, we came up with four early animation experiments. In every iteration, we tried to master the realistic, real-world feel.

Pinch&Drop Gesture Iteration #1

In the first iteration, we have tried to put a 2.5D object (a textured cube with 100x100x1 ratio) from air, which our UI (private space) will be to the table, which is the public space of our system. It worked pretty well, but we weren’t really showing the space of actual UI.

Pinch&Drop Gesture Iteration #2

In our second iteration, we have focus on the transition from 1D to 3D, working on the same pinch&drop gesture with the same sized textured cube.

Scale Gesture Iteration

Then, we have decided to work on other media types, such as video , and other functions such as scaling a media. For the video, we have used an animated texture in Cinema 4D with a jpg sequence.

Rotation Gesture Iteration

Finally, we have decided to try out “a more” 3D media. To quickly mock up it up, we have iterated on a curved video screen with rotation gesture.

After our iterations, we have worked on our interaction sequences for our concept video with the same workflow. Another big drawback of this workflow is that it doesn’t work well with moving cameras. So for example, to track a first point-of-view (POV) shot for our concept video, we have experimented AE’s built-in 3D camera tracker, which helped us kind of but again lacks of tracking both camera movement and the finger movement. For this reason, although we haven’t included a first POV shot in our video , we have found out a way to track multiple movements via MochaPro + After Effects. While we are revising our concept video in following days, we will definitely try to find a workaround for this since we have already acknowledge that first POV shots are very powerful to show the actual interaction through viewers eyes’ to simulate an experience through the Microsoft Hololens.

Here are some draft interaction animations from our concept video:

A user showing a Pirates Helmet to another user (Pinch&Drop and Scale)
A user is saving her memory packets (Press/Draw & Save)
A user is showing a photo to another user (Pinch&Drop)
A user is rotating a 3D Baseball Helmet (Pick&Drop and Rotate)
A user is adding a photo and deleting it (Pick&Drop and Delete)