An Efficient Method for Creating Virtual Spaces for Virtual Reality

Zhang, Z., Zhang, M., Chang, Y., Esche, S. K. & Chassapis, C.
Proceedings of the ASME International Mechanical Engineering Congress and Exposition IMECE'14, Montreal, Canada, November 14 - 20, 2014.

Abstract

Virtual reality (VR) in which the real world is modeled by a computer-simulated virtual representation is becoming more and more popular. It is now widely used in education, research, training, medical treatment and the military. The development of VR mainly involves creating a virtual space (VS), building virtual models of physical devices and customizing user avatars for this VS and devising plots for the activities carried out by the avatars in the VS. The VS in turn is represented by a single complex surface. While the plot design is based on knowledge corresponding to the specific application and implements the users’ intent, the remaining tasks are used to generate the virtual environment (VE). They are performed using general tools and skills which are independent of the users’ specific applications and intents. Creating the VS by surveying the real world with traditional measuring tools or creating virtual features with CAD software involves many steps and thus is time consuming and complicated. This renders the construction of VEs difficult, impairs their flexibility and hampers their widespread usage. In order to facilitate the construction of VEs, an efficient method for creating VSs with a handheld camera is introduced in this paper. In this approach, the camera is used as a measuring tool that scans the real scene and obtains the corresponding surface information. This information is then used to generate a virtual 3D model through a series of data processing procedures. Firstly, the camera’s pose is traced in order to locate the points of the scene’s surface, whereby the surface points thus obtained form a point cloud. Then, this point cloud is meshed and the mesh elements are textured automatically one by one. Unfortunately, the virtual 3D model resulting from this procedure represents an impenetrable solid and thus collision detection would prevent the avatars from entering into this VS. Therefore, an approach for eliminating this restriction is proposed. Finally, a game-based virtual laboratory (GBVL) for an undergraduate mechanical engineering class was developed to demonstrate the feasibility of the proposed methodology. This GBVL was implemented based on Garry’s Mod, a modification of the Valve game engine. The model format used in GMod is also found in other VEs, and therefore the method proposed here can be straightforwardly generalized to other VE implementations.