zum Inhalt springen

Paper presentation at IEEE SEARIS '17 (workshop at IEEE VR)

Source Code on github.com: https://github.com/szellmann/visionaray/

Visionaray - A Cross-Platform Real-Time Ray Tracing Kernel Framework

Visionaray is a C++-based real-time ray tracing library.

Visionaray's strengths are:

  • Open Source: Visionaray is licensed under the flexible MIT license.
  • Cross-platform: Intel CPUs, Nvidia GPUs, Xilinx FPGAs (work in progress). No duplicate code, all platforms targeted from the same C++ code.
  • High flexibility through kernel- and scheduler-based architecture. Kernels describe what a ray does, schedulers describe how a ray is spawned.

    • Built-in kernels: simple ray casting, "Whitted"-style ray tracing, "Kajiya"-style path tracing.
    • Built-in schedulers: simple (scanline, single-threaded), tiled (multi-threaded), TBB, CUDA.
    • User can write custom schedulers and kernels.

  • Built-in performance primitives: SIMD short vector library, fast SBVH builder and traversal, texture support, physically based materials, etc.
  • VR support: Visionaray comes with a plugin for the virtual reality renderer OpenCOVER.

Download Visionaray: http://github.com/szellmann/visionaray

Documentationhttps://github.com/szellmann/visionaray/wiki

Tutorial Series on medium.com: https://medium.com/@stefanzellmann

Facebook Sitehttps://www.facebook.com/visionaray

Visionaray Gallery

  • Path traced global illumination with diffuse interreflection.
  • Can run on the CPU and the GPU.

 

 

 

  • Physically based, complex materials based on microfacet distributions. 

 

 

 

 

  • Ray tracing in VR with textures, shadows and reflections.
  • VRML models, scene graph and dynamic scenes.

 

 

Software Development 

Visionaray is mainly developed by Stefan Zellmann and his student co-workers. You study computer science and want to become part of the team? Then contact:

Dr. Stefan Zellmann
Weyertal 121
50931 Cologne
zellmann(at)uni-koeln.de
+49 (0) 221 470 89615

 

Legal notice:

  1. The dragon and teapot data sets are common test objects used by the CG community and can e.g. be obtained from here: http://graphics.cs.williams.edu/data/meshes.xml
  2. Floops is a VRML data set that was available from SGI.