03. Developing Virtual Reality Experiences

Dr Tham Piumsomboon, School of Product Design.

Current VR Development Tools

2016: rise of consumer HMDs. Oculus, HTC Vive.

XR Fragmentation: different vendors all had their own proprietary APIs (e.g. Steam VR, Hololens, Oculus, HTC Vive, Magic Leap).

Kronos group (which created OpenGL, Vulkan, etc.) developed the OpenXR standard: cross-platform API supported by many hardware vendors.

Toolkits:

Game Engines:

Developing VR Experiences

Immersion:

Models of immersion:

Unity:

Analysis -> Profiler

Game engines components:

Game loop:

The subsystems will often update at different rates (e.g. NPC behavior may update at ~1 FPS, physics engine at 120 FPS, renderer at 60 FPS).

Camera placements and control mappings:

ProBuilder package: allows you to create new primitive shapes.

VR Interaction Design

Even if the graphics are good, you need to be able to interact with the environment.

Seven principles of fundamental design (Norman):

VR: mappings are from games, not reality (e.g. using scissors: clicK a button to use, not picking it up with your fingers). Chairs: cannot sit on VR chairs in real life

VR affordances:

User groups:

Whole user needs:

Summary: