Try   HackMD

GPU Day abstract - Aardvark Platform

We provide an overview of the Aardvark Platform team and current interesting projects. The team works in High Performance Rendering, Data Acquisition and Computer Vision areas together with industry partners, aiming to create clean, production-quality software. Functional Programming and Declarative APIs greatly facilitate this process for small and scientific teams.

  • Total Duration: 40-60 minutes
  • Speakers: Attila Szabo, Harald Steinlechner, Georg Haaser
  • We could bring a HTC Vive setup if there is space

1. A functional Photogrammetry library (Attila Szabo)

As part of a diploma thesis, a composable and reusable photogrammetry library was implemented from scratch. The computational and mathematical complexity involved is handled through a functional implementation. We present the necessary components for photogrammetry, outline an implementation, and discuss advantages of such a design.

2. Functional programming vs. Efficient Computer Graphics (Harald Steinlechner, Georg Haaser)

Aardvark Platform is an open source rendering and visual computing library powering multiple state of the art industry applications. The core component Aardvark.Rendering is a lazy incremental renderer which compiles render commands down to efficient GPU instructions using a dependency tracking system. An adaptive scenegraph provides a declarative scene specification API. We walk through the implementation of such a rendering backend and demonstrate difficult use cases handled quickly and concisely.

3. A functional Shader library (Georg Haaser)

FShade is a library for composable shaders. Using a declarative language, shader modules are defined independently and then compiled efficiently into a shader pipeline, which is then emitted as shader code. Features:

  • easy shader variation and reordering
  • automatic VR shaders
  • shader caching through expression tree serialization
  • live shader editor

4. Functional Programming in the Wild (Harald Steinlechner)

Building large, complex, and heavily underspecified research applications with small teams.
Aardvark.Media is an ELM-style application declaration library. It provides a declarative API, of which an efficient mutable implementation is compiled in the background. We demonstrate some examples implemented with Aardvark.Rendering and Aardvark.Media, including an efficient Volume Renderer, a large-scale level of detail system used with Point Clouds, and VR apps.