Project Vulkan: Unreleased Magic Leap Project

Project Vulkan was an app I had the pleasure of designing and creating for the Unreal QA team at Magic Leap.
It was designed to see how far we could push the ML1 Hardware.

One of the highlights of this project was developing a Sci-Fi material that was both challenging and exciting to work on. I wanted a material that truly embodied the Sci-Fi aesthetic, with the ability to control the specular color independently from the albedo on specific parts of a mesh. My research led me to a white paper that explored microfacet theory and iridescence, which inspired my approach to achieving this effect.

The first iteration of Project Vulkan was designed to test how the device handled a VR-centric scene. Given the team's concerns about poly count in the initial design meetings, we opted for a low-poly approach. The device performed well, running the scene at 60fps with standard packaging settings.

Our vision was to expand the project into a spatial experience by breaking apart the meshes, identifying planes in the room, and transforming a living room into a Sci-Fi bunker.

Additionally, I managed to get the app running at around 15fps in desktop mode on the device. With further optimization, I believe we could have achieved a respectable frame rate in this mode.

This was a really fun material I had the opportunity to make on this project. I knew I wanted to create something fun and Sci-Fi but I also wanted to stick to PBR. I actually found a Unity white paper on Iridescence that was the inspiration for this Mat.

This was a really fun material I had the opportunity to make on this project. I knew I wanted to create something fun and Sci-Fi but I also wanted to stick to PBR. I actually found a Unity white paper on Iridescence that was the inspiration for this Mat.

This was the main mat for the whole project. This image also shows the instanced material with vars exposed.

This was the main mat for the whole project. This image also shows the instanced material with vars exposed.

This material takes two cloud textures and animates them across each other, then sampling values and colorizing them.  This image also shows the instanced material with vars exposed.

This material takes two cloud textures and animates them across each other, then sampling values and colorizing them. This image also shows the instanced material with vars exposed.