Oculus GO

Hi - I’m not dead, but there hasn’t been much ground breaking stuff happening for me with VR.

I’m excited for Oculus Quest to be released and what that will do for teatherless VR. Leading up to Quest, I decided to pick up a Go despite my hatred for fixed point VR. I’m also going to play around with 360 video capture for playback in the Go. Although again, I really dislike the non parallax effect of looking at a spherical image with no depth data… but I’ll work with what I can at the moment.

So initial thoughts on the Go:

  • Lame setup via phone app

  • Nausea from smell of headset and lack of 6dof head movement

  • Annoying 10 step process to install, setup & push Unity scenes to headset. mostly the annoying point of installing this huge android development package, and then only need one tool from it. Maybe I followed the wrong tutorial for setup…

Currently building a scene in Unity that I believe will magically appear on the headset. Not a fan of having to toggle the developer mode via the phone app to get drag & drop to work with the headset (for photos/videos), and then turning developer mode on for ADB (android debug bridge) to let me push applications to the headset. I’m hoping I can delete the Unity package from the headset and not have to use the windows command line to do that.

Otherwise these days I’m working on VR scenes I can’t share. I still use my old process of baking the lighting. Otherwise I’ll throw the geometry into Unity without lighting just to get a basic feel for the space. Vray for Unreal is maybe starting to look promising - but again I do so much work in 3dsmax/vray, that any offshoot of the process just takes additional time starts to feel like a drag since projects are always evolving.

Network Render to Texture with Vray's Distributed Rendering

Another post to jot down a workflow for myself. Hopefully Chaosgroup will fix this bug but at the moment if you submit a Render to Texture job through backburner the job won't pick up the DR nodes that you want to include.

The solution (which I got from Chaosgroup's help, thanks!) is to take your local vray_dr.cfg file (which should have the list of DR nodes you want) and manually drop it into your network machine (whichever is running the job). The vray_dr.cfg file should be placed here: 

C:\Users\YOUR-USER-NAME\AppData\Local\Autodesk\3dsMax\2012 - 64bit\ENU\en-US\plugcfg

In my case I had been searching for vray_dr.cfg and found it in other folders where it looked correct, but then realized my network machine didn't have the vray_dr.cfg file in that particular folder so I copied one over and now things are working smoothly. You'll certainly want as much processing power as you can get to render those 4k or higher textures out.

4thFlrStudio | Vive edition

So I'm getting around now to posting a quick build of the 4thFlrStudio for the Vive. I think the newer headsets will start to show the poor quality of this demo now that the resolution is much improved. Either way it feels fantastic to be able to look around without the tracking breaking. My favorite thing to do now is use the camera pass-through to line up a physical chair to sit at the table. Be sure to put on headphones.

I'd love to figure out how to get contact shadows to lay over the unlit shaders - and be able to place things on the table to interact with. Sitting at that table was a very fond memory.

Grab the demo here, http://www.quitenice.co/blog/2014/8/3/4thflrstudio

I also plan to update the demo with the latest Rift sdk when my Rift arrives...

Vive | Setting up basic teleportation in Unity3d

The best solution at the moment is following Theston's work, which is an all-in-one script that you drop on the controllers. It handles a laser pointer, teleportation, and even some ability to grab objects. See what he's doing here, https://youtu.be/uTZ0xw4SPn0 - and here, https://www.reddit.com/r/Vive/comments/4gdxgt/steamvr_unity_toolkit_my_attempt_at_making_useful/

Download the assets here, https://github.com/thestonefox/SteamVR_Unity_Toolkit. And my steps I go through to integrate the files into my projects:

  • Import the latest SteamVR Plugin
  • Download the zip of SteamVR UNity Toolkit from Github
  • Copy SteamVR_Unity_Toolkit folder into your Unity project's Assets folder
  • Edit / Project Settings / Graphics, add a new included shader - choose 'Unlit/TransparentColor
  • Drop CameraRig into scene from, Assets / SteamVR_Unity_Toolkit/Prefabs
  • Put Steam VR_Basic Teleport script on CameraRig (found in the Assets / SteamVR_Unity_Toolkit/Scripts folder)
  • Put Steam VR_Controller Events & Steam VR_Simple Pointer scripts on both Controllers.
  • Have the floor be a physics collider. I break my floor geometry off from the rest and put a Mesh Collider on them. The teleporter will now only work when pointed at the floor.

Linear EXR Texture Baking

Texture Baking 3dsmax/Vray -> Unity3d)

I wanted to post this up for future reference. Somehow I've managed to bake textures as .tga all this time without complaining - The problem is I wanted to try baking my textures as .exr. But when baking more than one object, you aren't able to adjust the filetype you want to export your baked textures as. So they default to .tga

While chatting with a friend about making a baking script for me, we stumbled across this post online - http://forums.cgarchitect.com/34620-render-texture-multiple-objects-jpg.html. Michiel Quist posts the steps needed to change the default filetype used by the Render to Texture dialog.

  • Find your 3dsmax folder and go into this subfolder ...\UI\MacroScripts
  • Edit 'Macro_BakeTextures.mcr' in a text editing program
  • Find this line, local    defaultFileType = ".tga" -- default bitmap file extension

I replaced .tga with .exr to try and take advantage of rendering textures in linear color space. I know Unity3d has buttons for working with linear color space.

So far in Unity3d I've done this --

  • Change the imported texture settings to 'advanced' texture type
    - Bypass sRGB Sampling, tick On
    - Encode as RGBM, tick Off
    - Generate Mip Maps, tick Off
    - Wrap Mode, Clamp
    - Format, Automatic Truecolor
  • Camera has HDR ticked. edit: this is been problematic. One thing is that HDR cameras do not support MSAA. Another problem is that Unity does not support post corrections to linear exr textures. You'd need to invest in Amplify Textures 2 if you wanted full control. But even then, the sacrifice of MSAA doesn't seem to be worth it at the moment.

  • Batch convert materials to lit/texture, then selectively go around and switch various textures/shaders to standard material to give reflective properties
  • Extra camera screen space adjustments

I'll try and put together a personal 3d scene at home that I can share this new process.