techreport.pdf (915.16 kB)
Download file

Adding Custom Intersectors to the C++ Ray Tracing Template Library Visionaray

Download (915.16 kB)
posted on 2020-01-03, 09:27 authored by Stefan ZellmannStefan Zellmann

Most ray tracing libraries allow the user to provide custom functionality that is executed when a potential ray surface interaction was encountered to determine if the interaction was valid or traversal should be continued. This is e.g. useful for alpha mask validation and allows the user to reuse existing ray object intersection routines rather than reimplementing them. Augmenting ray traversal with custom intersection logic requires some kind of callback mechanism that injects user code into existing library routines. With template libraries, this injection can happen statically since the user compiles the binary code herself. We present an implementation of this “custom intersector” approach and its integration into the C++ ray tracing template library Visionaray.


Email Address of Submitting Author

ORCID of Submitting Author

Submitting Author's Institution

University of Cologne

Submitting Author's Country

  • Germany

Usage metrics