我现在想实现平面分块多分辨率体绘制。众所周知,我们应该首先将体数据分成2^n*2^n*2^n个大小相等的块。然后我们决定每个子块的LOD(细节级别)。最后我们将这些块使用不同的分辨率存储到压缩纹理中。
现在我的问题是:
(1)我读过一篇论文《Multi-resolution texture rendering for medical data》,我知道块的维度必须是2的幂。但是如果体数据不是2的幂,例如512*512*225 ,我应该如何划分体积数据?
(2)如何计算每个块的LOD?有人可以向我推荐一些典型且有用的算法吗?
以下是论文《Multi-resolution texture rendering for medical data》中的算法:块的每一层细节可以用下面的公式来量化:
avgi 表示某个父块的第 i 个子块中 2^3(max_l) 标量值的平均值。max_l 是父块的最高细节层次。l 表示正在分析当前的细节层次(?? ??我不是很明白)。Sj 表示标量值。