Web-based client for remote rendered virtual reality

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Master's thesis

Department

Major/Subject

Mcode

SCI3042

Language

en

Pages

68

Series

Abstract

Although the concept of Virtual Reality (VR) has existed since the 1960s, it is only in recent years that it has gained a significant amount of attention from consumers, businesses, and researchers. High-end VR headsets offer the best visuals to the users; however, the high cost of running a high-end VR setup limits the consumers' adoption which often fall back on less expensive mobile or standalone headsets. With the mobile hardware included in these devices, the graphics capabilities are limited compared to high-end devices. Streaming VR content over the network can potentially provide high-quality experiences to headsets with limited power. Moreover, the streaming service can be used to provide the same rendering experience to different platforms, regardless of the client's hardware. However, any remote rendering solution unavoidably suffers from latency caused by the network, the amount of latency may not be acceptable in latency sensitive applications such as VR. The goal of this thesis is to develop a cross-platform VR application that delegates the rendering process to the server, the rendering results are then sent back to the client application for display. Unlike most of the previous systems, the client and server should be designed to support multiple headsets and controllers, the design should also allow to easily add the support for new devices in the future. More importantly, the client application should fulfill the basic VR requirements and ensure low latency to provide the best user experience. The server was built with Unity, and the client, with A-Frame. The streaming components were handled by using the WebRTC open standard. Although the implemented system in this work was functional, the performance evaluation showed that the client application could not maintain the minimum of 60 Frames-per-Seconds (FPS) which is required to provide a fluid playback. Moreover, the high stale frame count suggests that additional latency is added when displaying the frame. Optimization in the decoding speed and shader are necessary to improve the frame rate.

Description

Supervisor

Ylä-Jääski, Antti

Thesis advisor

Kämäräinen, Teemu

Other note

Citation