A Toolkit for Virtual Reality Software Development - Investigating Challenges, Developers, and Users
Tuukka M. Takala · Aaltodoc (Aalto University) · 2017
Possibilities of virtual reality (VR) technology have gained considerable attention recently due to technical advances in affordable head-mounted displays. Yet the use of VR technology has not become mainstream, and there still does not exist a "killer application" for VR. One reason for this situation could be the inherent difficulty of VR software development. This thesis investigates challenges specific to VR software development, and explores methodology for such research. The thesis includes some of the earliest quantitative analysis on VR software development challenges, identifies the most severe development issues, and proposes solutions to them. This has implications on how VR software development could be eased. The analysis is based on data collected from 132 developers of VR application programs, which forms the backbone of the research. The thesis introduces RUIS, a software toolkit for facilitating hobbyist innovation by simplifying the development of VR application programs that rely on immersive displays and spatial interaction devices. Case studies employing VR application programs created with RUIS are included, describing different ways how 3D user interfaces can affect the experience and performance of VR software users. Methodology for benchmarking VR toolkits is presented, RUIS is contrasted with other toolkits, and multiple VR application programs created by students with RUIS are juxtaposed. The results demonstrate the importance of the chosen VR toolkit for the development process in two ways: 1) by presenting several comparisons that show how different VR toolkits can significantly affect the experienced development challenges, and 2) by highlighting the quantifiable distinctions in VR application programs created with different toolkits. Additionally, this thesis features an extensive survey on the developers of 3DUI application programs, revealing their demographics, the software and the hardware that they use, and an overview of the 3DUI application programs that they create. The survey also points out those development challenges that particularly affect inexperienced developers, and illustrates that the reuse of high-level 3D user interface features is low. Potential solutions to these issues are proposed in the thesis.