面向大规模游戏组件的并发二叉树
Concurrent Binary Trees for Large-Scale Game Components
AI总结:
本文提出利用并发二叉树将基于二分的自适应细分扩展到任意多边形网格,并将其用作GPU内存池管理器以支持更高细分级别,从而在主机级硬件上以不到0.2毫秒高效渲染行星尺度几何体。
摘要:
并发二叉树(CBT)是一种对GPU友好的数据结构,适用于生成基于二分的地形细分,即正方形域上的自适应三角剖分。在本文中,我们从两个方面扩展了该数据结构的好处。首先,我们展示了如何将基于二分的细分应用于任意多边形网格,而不仅仅是正方形。我们的方法包括将一个三角形细分原语(我们称之为二分器)映射到输入网格的每条半边。然后,这些二分器可以被自适应地细分,以仅基于半边算子生成一致的三角剖分。其次,我们缓解了一个将三角剖分限制在低细分级别的限制。我们通过将CBT用作内存池管理器,而不是像最初那样对三角剖分进行隐式编码来实现这一点。通过以这种方式使用CBT,我们在自适应细分期间使用共享GPU内存并发分配和/或释放二分器。我们通过从非常粗糙的网格渲染行星尺度几何体来展示我们改进的好处。在性能方面,我们的三角剖分方法在主机级硬件上的评估时间不到0.2毫秒。
英文摘要:
A concurrent binary tree (CBT) is a GPU-friendly data-structure suitable for the generation of bisection based terrain tessellations, i.e., adaptive triangulations over square domains. In this paper, we expand the benefits of this data-structure in two respects. First, we show how to bring bisection based tessellations to arbitrary polygon meshes rather than just squares. Our approach consists of mapping a triangular subdivision primitive, which we refer to as a bisector, to each halfedge of the input mesh. These bisectors can then be subdivided adaptively to produce conforming triangulations solely based on halfedge operators. Second, we alleviate a limitation that restricted the triangulations to low subdivision levels. We do so by using the CBT as a memory pool manager rather than an implicit encoding of the triangulation as done originally. By using a CBT in this way, we concurrently allocate and/or release bisectors during adaptive subdivision using shared GPU memory. We demonstrate the benefits of our improvements by rendering planetary scale geometry out of very coarse meshes. Performance-wise, our triangulation method evaluates in less than 0.2ms on console-level hardware.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。