G-Buffer compression for remote rendering web applications
As modern CAD applications need to render big scenes it is necessary to use client-server hybrid rendering to distribute work between two machines. This can reduce the needed bandwith and enhance the rendering performance. One way to implement hybrid rendering is to render the scene into G-Buffers, send them to the client and perform deferred shading there to render the final image. With this approach there is no need to send gigabytes of 3D model data over the network. In this master thesis, we will look into different methods to compress G-Buffer data. The G-Buffer is composed of three parts (object id's, depths, normals). We will analyze to which extend common image compression algorithms like JPEG will work on these parts. There are also methods specifically for compressing normal and depth data which we will look at. We will evaluate selected algorithms to further enhance the overall G-Buffer compression ratio. A server and client application have to be developed in order to evaluate the different compression methods. To ensure that the client runs on a broad range of devices the code will be implemented as a web application using HTML5, Java Script and WebGL. Thus, only methods can be used which enable for a fast decompression even on devices with low computing capabilities. The results of this thesis will be used inside the instant3Dhub system technology, which is developed by the VCST department.
Darmstadt, TU, Master Thesis, 2016