Raymarching distance fields with CUDA

Avelina Hadji-Kyriacou, Oggie Arandelovic

Research output: Contribution to journalArticlepeer-review

1 Downloads (Pure)

Abstract

Raymarching is a technique for rendering implicit surfaces using signed distance fields. It has been known and used since the 1980s for rendering fractals and CSG (constructive solid geometry) surfaces, but has rarely been used for commercial rendering applications such as film and 3D games. Raymarching was first used for photorealistic rendering in the mid 2000s by demoscene developers and hobbyist graphics programmers, receiving little to no attention from the academic community and professional graphics engineers. In the present work, we explain why the use of Simple and Fast Multimedia Library (SFML) by nearly all existing approaches leads to a number of inefficiencies, and hence set out to develop a CUDA oriented approach instead. We next show that the usual data handling pipeline leads to further unnecessary data flow overheads and therefore propose a novel pipeline structure that eliminates much of redundancy in the manner in which data are processed and passed. We proceed to introduce a series of data structures which were designed with the specific aim of exploiting the pipeline’s strengths in terms of efficiency while achieving a high degree of photorealism, as well as the accompanying models and optimizations that ultimately result in an engine which is capable of photorealistic and real-time rendering on complex scenes and arbitrary objects. Lastly, the effectiveness of our framework is demonstrated in a series of experiments which compare our engine both in terms of visual fidelity and computational efficiency with the leading commercial and open source solutions, namely Unreal Engine and Blender.
Original languageEnglish
Article number2730
Number of pages26
JournalElectronics
Volume10
Issue number22
DOIs
Publication statusPublished - 9 Nov 2021

Keywords

  • Rendering
  • Sphere tracing
  • Ray tracing
  • Graphics
  • Photorealism
  • CUDA kernels
  • Acceleration

Fingerprint

Dive into the research topics of 'Raymarching distance fields with CUDA'. Together they form a unique fingerprint.

Cite this