Fork me on GitHub

Binary Mesh Representations for Large 3D Models

01.02.2013 Showcase Technical


When using declarative 3D approaches for the rendering of large models, it is crucial to externalize vertex data from the HTML document by using binary containers (see previous post). Attribute data can be concurrently fetched by the Browser via Ajax calls or image downloads and is directly transferred as-is to GPU memory for rendering. Such a straightforward approach significantly reduces the memory and processing overhead, which is especially of high importance on mobile devices with limited CPU power.
A new X3DOM example, which uses the BinaryGeometry node, demonstrates how a compact vertex data representation for efficient visualization of large models can look like.

We furthermore improved our culling and mesh compression techniques to get the famous Boeing 777 model running at interactive frame rates. This “out-of-browser”-based hybrid client/server approach allows rendering 350 million triangles, where a special out-of-core server constantly streams up to 9 million triangles to the client. The results are not yet final, but the current state shows that the method scales and we can handle models even of the size of the 777. And here is the link to the video: