Loading…
Using Multilevel Hash Tables to Speed up Rendering
In this paper, we analyze realistic rendering methods in terms of their efficiency in calculating caustic and indirect illumination. As the basic approach to realistic rendering, we choose bidirectional progressive ray tracing with backward photon maps. The main factors that reduce the efficiency of...
Saved in:
Published in: | Programming and computer software 2023-06, Vol.49 (3), p.161-171 |
---|---|
Main Authors: | , , , , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | In this paper, we analyze realistic rendering methods in terms of their efficiency in calculating caustic and indirect illumination. As the basic approach to realistic rendering, we choose bidirectional progressive ray tracing with backward photon maps. The main factors that reduce the efficiency of this method are analyzed. It is shown that the main factor that affects its performance is slow access to photon map data. Different techniques for construction of spatial acceleration structures are considered, their advantages and disadvantages are investigated. As the main approaches, we select the regular spatial grid and binary kd-tree. The spatial grid provides high-speed access to photon data at low adaptability of photon map partitioning. The kd-tree is characterized by high spatial adaptability of photon map partitioning but slow access to photon data. We propose a combined solution that takes advantage of the adaptability of the kd-tree and the fast data access of the spatial grid. For this purpose, the regular grid is superimposed on the kd-tree constructed based on the principle of space partitioning of a photon region into geometrically identical halves. To reduce memory consumption, we propose, first, to use multilevel spatial grids superimposed on the selected nodes of the kd-tree and, second, to store spatial grids in the form of hash tables in order to reduce the size of the acceleration structure. Thus, a spatial acceleration structure of a new type—a tree of hash tables—is proposed and implemented. For the spatial structure developed, we implement methods for finding the nearest photons the integration spheres of which cover the illumination point, as well as methods for finding the intersection between a ray segment and photon integration spheres. The proposed software solutions are implemented in the Lumicept software package; for some scenes, the proposed method is compared with the Lumicept method based on the binary tree. The comparison shows that our method can increase the overall speed of the rendering process by more than 40%. |
---|---|
ISSN: | 0361-7688 1608-3261 |
DOI: | 10.1134/S0361768823030076 |