给出了没有孔的凹面多边形的轮廓/边界,我需要对其应用高度图。为此,我需要对多边形进行近似均匀的镶嵌,如下所示:



如何执行镶嵌?理想情况下,该解决方案可以参数化内部顶点的“分辨率”以调整细分的细节。

我正在使用OpenSceneGraph,因此,如果可以使用理想的内置细分库来实现某种可能性,但是我愿意在必要时引入其他(希望是轻量级的)依赖项。

最佳答案

非常好 !您是否考虑过为此使用几何着色器? DirectX 11和OpenGL允许使用GPU进行“动态”镶嵌。取决于您的硬件,它的速度提高了20-40倍。

我最喜欢VS2015 / C#镶嵌动画的起点是

https://github.com/RobyDX/SharpDX_Demo/tree/master/SharpDXTutorial/Tutorial11

如果您更喜欢C / C++和OpenGL,那么也有很多示例。

http://prideout.net/blog/?p=48

我的一些东西,我为高度采样了一个纹理位图。在右侧,您会看到由我的小三角形中的正常小错误引起的一些假象..必须对此进行工作:)

c++ - 高度图的凹多边形的近似均匀镶嵌-LMLPHP

网格上方是32x32正方形,并具有镶嵌深度7。在这里,您将看到展平的网格,显示深度为1镶嵌:

c++ - 高度图的凹多边形的近似均匀镶嵌-LMLPHP

10-05 21:04