Publication

Xflow: Declarative Data Processing for the Web

Felix Klein, Kristian Sons, Stefan John, Dmitri Rubinstein, Sergiy Byelozyorov, Philipp Slusallek

In: Proceedings of the 17th International Conference on Web 3D Technology. ACM International Conference on 3D Web Technology (Web3D-2012) 17th August 4-5 Los Angeles CA United States ACM 2012.

Abstract

The Web evolved from a simple information medium to an interactive application platform featuring advanced 2D layouts, videos, and audio. At the same time, support for hardware-accelerated 3D graphics improves continuously even among mobile devices. Hence, there is a renewed interest in adding interactive 3D graphics to the overall Web experience and therefore a need for high-performance data processing beyond DOM modifications through JavaScript. A challenge in adding this functionality to Web technologies is to close the deep gap between low-level hardware programming (e.g. using WebGL or WebCL) and high-level Web development with HTML, CSS and JavaScript. In this paper we present Xflow, a system for declarative, high-performance data processing. In combination with XML3D, it allows Web developers to combine a 3D scene graph with dataflows. Our approach is general enough to allow meshes, shaders, texture samplers and the canvas itself as sink of these dataflows. Thus it enables data processing e.g. for dynamic meshes, animation of shader parameters, image processing and post processing. In this first stage, we define a set of generic building blocks that can be used to construct more complex operations. This gives a large degree of flexibility, but is still abstract enough to increase ease-of-use and ensure security. To maximize performance, dataflows are automatically connected to the render pipeline and mapped to both CPU and GPU, thus harnessing parallelization. In order to evaluate our system, we have created a number of examples.

Weitere Links

xflow-final.pdf (pdf, 3 MB)

German Research Center for Artificial Intelligence
Deutsches Forschungszentrum für Künstliche Intelligenz