在静态矢量3D引擎中深度排序三角形

时间:2014-11-29 10:28:31

标签: graphics 3d vector-graphics

我正在尝试为科学应用程序编写一个3D渲染器,它基于矢量而不是像素。我的想法是能够输出到矢量格式,例如SVG,所以我想把所有东西都保存为矢量对象,而不是像素化。对象通常具有透明度。

此刻,我将所有内容分解为3D三角形和线段,并在有重叠的地方进行分割。然后使用深度排序(画家的算法)对场景进行投影和绘制。我按三角形的最小深度排序(其次按关系的最大值排序)。如果在较大的三角形后面有长的细三角形,这可能会按顺序上升,则会失败。

仅为同一组对象绘制一次场景。由于矢量化和透明度,我显然无法使用z缓冲。是否有一种强大且合理快速的方法以正确的z顺序绘制三角形?通常可能有几千个三角形。

0 个答案:

没有答案