Today, we're going to learn how to setup Blender to render a full-immersion 3D video and upload it to YouTube. We'll start by covering some gear to preview your videos (with links to Amazon), quickly fabricate a scene, configure Blender for 3D output, do the required prep, and finally upload to YouTube. Nothing we do here is particularly novel or difficult, but it will hopefully save you some time in making videos of your own.

Here's a preview of the finished product. Open in the YouTube app to view as a Cardboard video.

Direct link:


And the .blend file:


I played with Google Cardboard at home this winter. The setup and use stood in stark relief to the setup and use of my Oculus at home. Connecting the camera of the Oculus, the HDMI out, the power, installing drivers, updating the device, all took on the order of hours. In contrast, the Cardboard took on the order of 15 minutes to assemble, and the Cardboard App downloaded in parallel. It's not a replacement for the Oculus, but as a function of dollars+effort in to entertainment value out, it's quite effective.


Pretty much any Google Cardboard kit will do fine. I picked up this because I wanted something I could use without my glasses. It supports focal and IPD adjustments:

If you're on the market for something cheaper and Prime ready, this is also an option:

Again, any cardboard device will do. Here is a lengthy Amazon list of cheap devices.

Setting Scene and View

Open the scene you want to use for 3D video. Reset the orientation and position of your camera, then set the camera's rotation so that it is pointing straight down the positive Y-axis. If you'd like to use a pre-made scene, download the .blend file above.

Render settings

Be sure you're using the Cycle's renderer. Blender's default rendering engine doesn't have the camera settings we need to correctly export a video.


Next, open up the "Render Layers" section on the right side and check "Views" at the bottom.

02 Scene Settings

By default, Stereo 3D provides left and right views. We're done with this pane.

Camera Settings

Make your way over to camera settings. We will switch the camera type from Perspective to Panoramic. This allows us to capture the scene in its entirety in a single render pass. In the "Type" option below Lens type, switch to "Equirectangular." Google's tools expect equirectangular output.

Convergence Plane Distance and Interocular distance can remain the same.

Set the pivot to whatever you'd like. I prefer 'center'.

Your camera tab should look like this:

03 Camera Settings

Output settings

Update the following settings:

Device: GPU Compute! Don't forget this! You _can_ use your CPU to run Cycles, but it's going to take a lot longer.

Output: MPEG (Needed for Google's Metadata tool.)

Views Format: Stereo 3D

Stereo Mode: Top-Bottom (or left-right, but I like top-bottom because it's easier to view the video before upload.)


Format: MP4 (Needed by YouTube's tool.)

Codec: H.264

Audio Codec: AAC

Then set your start frame/end frame and resolution. Mash render. You settings should look like this:

04 Render Settings

YouTube Prep

Download the YouTube 360-Degree Video Tool here:

Unzip it and fire it up.

Open the video you just created. Check 'spherical' and '3D Top-bottom'.

'Save as' and place your newly created file wherever you'd like.

05 Spherical Metadata

YouTube Upload

Upload the newly created video to YouTube as you would any other.

When completed, go to 'Info and Settings' on the video page.

06 Info and Settings

Select the 'Advanced Options' tab and check "This Video is 3D." Select the Top-Bottom option and save your changes.

07 Advanced

That's it! Now you should be able to view your 3D video in browser or in Cardboard on your device.

Spent the day tweaking jump physics and character movement physics. I had some early troubles with a race condition between FixedUpdate and Update. I was 'decaying' the player's jump impulse in FixedUpdate so he/she could hold space to get a little extra height out of a jump. That turned out to bite me a little because occasionally, the jump impulse seemed to get overwritten. Additional problems with a raycast checking ground contact. Lost a day to that, but at least I could unwind this evening and model a tiny rocket.

Missile Untextured

Missile Textured

Missile 3

With the language model happily training away, it's time to get started drawing the front-end. I know that I really want something reminiscent of Lucasart Graphic Adventures. I've yet to figure out what portion of users will be running windowed and what an ideal resolution to target is. I'll have to finalize that before starting on the art, but I can still mock up the UI in a way that's resizable.

Interview Mockup 4x Upscale

While making this animation for Hidden Asbestos, the flare effect from the gun kept getting drawn with edges by the Freestyle rendering engine in Blender. It wasn't too crazy to find a solution online, but it wasn't immediately clear, either. The top result was actually for partially excluding lines. I needed to exclude the entire object. I did this by selecting the muzzle flash and adding it to a group, then selecting Freestyle > Selection By > Group > Exclude, and adding my flash to a group. The result:

Swat Fire 2

Forums poster Hidden Asbestos asked me to make a few models for his up coming SWAT themed game. I had some immature fun: