Timothy Scully, Sebastian Friston, Carmen Fan, Jozef Doboš and Anthony Steed
Full Text | ACM DL | Video | Slides
As Web3D technology advances, the need for delivering real-time 3D content online has gained traction in the academic as well as commercial world. Various efforts have been made in creating a suitable transmission format for streaming of 3D assets over the Internet. Despite being accustomed to waiting for long periods of time for massive scenes to load in CAD editors, end users often expect an instant rendering on a web browser. An effective streaming transmission format, coupled with progressive encoding methods, is able to create a better interactive experience for the users. Most of the existing techniques are either domain specific, tying the users in on a particular rendering engine, or they are too general; resulting in extra processing at the application level. In this paper, we demonstrate a novel method of transmitting 3D assets in glTF format for high interoperability and scalability in 3D Repo. Firstly, we extend glTF with the ability to stream binary data buffers with a progressive encoding technique to increase performance and overall client interactivity. Next, we extend X3DOM for glTF support and introduce multipart optimization into glTF as a way of grouping multiple meshes together which significantly reduces the number of network requests as well as draw calls. Finally, we investigate memory management protocols and devise a novel GraphicsMemoryManager suitable for streaming on top of X3DOM in order to render models that otherwise would not fit available video memory.