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...

Full description

Saved in:
Bibliographic Details
Published in:Programming and computer software 2023-06, Vol.49 (3), p.161-171
Main Authors: Zhdanov, D. D., Lysykh, A. I., Khalimov, R. R., Kinev, I. E., Zhdanov, A. D.
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!
Description
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