Graphics Reference
In-Depth Information
The high average number of hit tests per ray as well as the high average
number of triangles per grid cell in the Sponza scene suggests that a more adaptive
ray grid could be beneficial for more complex scenes with uneven tessellation. The
great number of small triangles on the Sponza curtains fill the rather coarse fixed-
size grid cells with loads of unstructured geometry, resulting in many hit tests for
the rays passing nearby.
2.6 Conclusion
In this chapter, we have proposed a GPU-based object-order ray-tracing al-
gorithm that allows for the tracing of incoherent secondary rays at interac-
tive speeds. We have shown that this is possible in the context of a typical
rasterization-based deferred shading rendering engine, without changing the ar-
chitecture from linear batch processing to global pooling of randomly accessible
scene data.
The presented algorithm is another step toward mingling rasterization and
ray-tracing approaches. In future work, this mingling could be taken even further
by re-introducing fixed-size shallow geometric hierarchies inside triangle batches.
This way, the coherency that is present in most chunks of triangles could be
exploited further and the linear cost of crowded ray grid cells with many triangles
couldbeimprovedupon.
Future work could also apply multi-level grids as described by [Kalojanov
et al. 11] to adapt grid resolution to uneven tessellation. This would additionally
help in skipping potentially larger empty spaces in vast scenes. Furthermore,
transferring occlusion culling as it is commonly used in rasterization-based ren-
dering to secondary ray tracing could be an interesting topic.
The presented algorithm makes extensive use of the flexibility that is offered
by the DirectX 11 graphics pipeline. With the tessellation and geometry shader
stages, the graphics pipeline currently offers two junction points for load balanc-
ing, redistributing work across parallel GPU threads on the fly. However, passing
data between these stages is still dicult. Currently, there does not appear to be
an ecient way of passing entire triangles down to the pixel shader stage without
resorting to a separate geometry stream out pass. DirectX 11.1 introduced un-
ordered resource writes in all shader stages, which slightly improves the situation.
While the feature is not widely available on PCs yet, it is likely to spread with
the introduction of the next console generation. Still, having to resort to global
memory writes seems like a suboptimal solution considering the availability of
fast on-chip shared memory on today's graphics hardware.
Bibliography
[Aila and Laine 09] Timo Aila and Samuli Laine. “Understanding the Eciency
of Ray Traversal on GPUs.” In Proceedings of the Conference on High Per-
formance Graphics 2009 , pp. 145-149. New York: ACM, 2009.
Search WWH ::




Custom Search