1/27/19: Quill to Unreal

Where last week was full of conceptual challenges, I encountered all of the technical challenges over the last few days. Before moving too far into production in Quill, I wanted to make sure this was a pipeline that was feasible and functional within the time span I have. I also wanted to double up my time by facing on the technical challenges and still working on an animatic.

Maquette was a good first step last week. I have found that planning for VR in VR is a key part of the development process… yet it’s still difficult to choose a tool. While Maquette presented many opportunities for rapid spatial iteration, what I really needed - light placement, pipeline development, and audio - just wasn’t viable in that environment. I needed to get Unreal functional. I was able to get Quill and Unreal working together on the same computer in the lab, but still face issues with frequent crashing and Quill being incredibly picky about tracking. I haven’t faced those issues on my home setup, and so I’ve been doing most experimentation on my own setup.

I’m still getting used to the controls in Quill. They don’t feel especially intuitive, though I am slowly getting better with time. Working on another project in Tilt Brush earlier in the week, I was able to get more of a feel for painting techniques in a program that I feel is much more pared down and easier to iterate in. Jumping back into Quill afterwards felt a little more comfortable and I am getting faster. To test the pipeline I animated a candle flame and sparks that are a major lighting source in my story:

Animated flame in Quill

Animated flame in Quill

I watched Goro Fujito’s video on how to animate brush strokes for falling leaves- incredibly helpful, though I was still having a rough time getting a hang of that painted lathe trick to make solid objects.

I exported that out of Quill as an alembic file, and that’s where some of my trouble began. There is very little documentation on the pipeline for bringing a Quill animation into Unreal. Unity has its own alembic importer and shader for Quill, and Maya has some decent documentation. I tried bringing it into Maya, exporting into different formats, bringing that into UE4 and Unity. Just having a ton of issues getting the animations to play properly and texture to display.

It turns out the final process was to export the alembic from Quill, import into Unreal as the experimental Geometry Cache component, and make my own material with a vertex color node. I’m pretty sure I can separate individual layers in Maya and export them as their own alembic files for use, but that’s a process for the more complex elements in the scene and I haven’t tested it yet.

I started building a scene around that, getting some lighting in there and blocking out some of the bigger landscape features that I’ll later be painting.

UE4: Blocking in geometry.

UE4: Blocking in geometry.

Unreal has a pretty good Sky Sphere with illuminated stars, I’m using that as a stand in right now. As I blocked in shapes I made sure to check periodically in the Oculus that the scale made sense for what I’m trying to accomplish. I am also familiar with the Sequencer tool in Unreal, and so have been using it to key values in the scene to create a basic animatic. The result is a developing block-in for my project that functions as a VR animatic while I get more familiar with Unreal. The viewer starts in a dark fog, which then lightens briefly to reveal the candle lighting. Over time the fog recedes and the stars show. I plan on guiding the user’s attention with specific lighting cues, the first already in the scene with the rising sparks on the candle.

Current state of the sequencer, using to coordinate my animations.

Current state of the sequencer, using to coordinate my animations.

Going through the process, I think my biggest question right now comes down to scale (again). I want the viewer to feel small in the beginning, but then transition to feeling close and connected. Scenes in VR have a tendency to feel very large, distances seem much farther than they should be. I’m interested to see how much more effective a dramatic shift in proximity to the viewer can be in a VR space. On a project last semester I fell into a habit of testing the scene in the VR Simulator instead of in the headset. The result was a scene that felt too large for the user, and I’m already starting to catch those instances just by working in the headset more frequently. Animating in Quill has been really helpful as well, as I’m able to use my body as a reference.

Next Steps

Adding in the narrative audio will be the first step of this week to work out the timing, and bringing in more Quill animations and static models by the end. Now that I understand the pipeline a little better and how to move around Unreal, I’ll be able to bring in all new work and add it to the scene as I go.

I have also begun collecting sound effects, and will be using those to build my scene up throughout the week.