Raymarching Distance Fields with CUDA
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. Raymarc...
Guardado en:
Autores principales: | , |
---|---|
Formato: | article |
Lenguaje: | EN |
Publicado: |
MDPI AG
2021
|
Materias: | |
Acceso en línea: | https://doaj.org/article/d84e6163314949898b24251d4431aaed |
Etiquetas: |
Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
|
id |
oai:doaj.org-article:d84e6163314949898b24251d4431aaed |
---|---|
record_format |
dspace |
spelling |
oai:doaj.org-article:d84e6163314949898b24251d4431aaed2021-11-25T17:24:02ZRaymarching Distance Fields with CUDA10.3390/electronics102227302079-9292https://doaj.org/article/d84e6163314949898b24251d4431aaed2021-11-01T00:00:00Zhttps://www.mdpi.com/2079-9292/10/22/2730https://doaj.org/toc/2079-9292Raymarching 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.Avelina Hadji-KyriacouOgnjen ArandjelovićMDPI AGarticlerenderingsphere tracingray tracinggraphicsphotorealismCUDA kernelsElectronicsTK7800-8360ENElectronics, Vol 10, Iss 2730, p 2730 (2021) |
institution |
DOAJ |
collection |
DOAJ |
language |
EN |
topic |
rendering sphere tracing ray tracing graphics photorealism CUDA kernels Electronics TK7800-8360 |
spellingShingle |
rendering sphere tracing ray tracing graphics photorealism CUDA kernels Electronics TK7800-8360 Avelina Hadji-Kyriacou Ognjen Arandjelović Raymarching Distance Fields with CUDA |
description |
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. |
format |
article |
author |
Avelina Hadji-Kyriacou Ognjen Arandjelović |
author_facet |
Avelina Hadji-Kyriacou Ognjen Arandjelović |
author_sort |
Avelina Hadji-Kyriacou |
title |
Raymarching Distance Fields with CUDA |
title_short |
Raymarching Distance Fields with CUDA |
title_full |
Raymarching Distance Fields with CUDA |
title_fullStr |
Raymarching Distance Fields with CUDA |
title_full_unstemmed |
Raymarching Distance Fields with CUDA |
title_sort |
raymarching distance fields with cuda |
publisher |
MDPI AG |
publishDate |
2021 |
url |
https://doaj.org/article/d84e6163314949898b24251d4431aaed |
work_keys_str_mv |
AT avelinahadjikyriacou raymarchingdistancefieldswithcuda AT ognjenarandjelovic raymarchingdistancefieldswithcuda |
_version_ |
1718412439400218624 |