3

我得到了一个不能有孔的凹多边形的轮廓/边界,我需要对其应用高度图。为此,我需要像这样对多边形进行近乎均匀的细分:

.

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

我正在使用 OpenSceneGraph,所以如果使用它的内置曲面细分库以某种方式可能的话,那将是理想的,但我愿意在必要时引入一个额外的(希望是轻量级的)依赖项。

4

2 回答 2

1

非常好 !你有没有考虑过为此使用几何着色器?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

我的一些,我对高度的纹理位图进行采样。在右边,你会看到一些由我的小三角形中的小正常错误引起的伪影.. 必须处理那个:)

我的一些

上面的网格是 32x32 正方形,镶嵌深度为 7。在这里您可以看到扁平网格,显示深度为 1 的镶嵌:

显示镶嵌的扁平网格

于 2017-06-02T20:45:15.903 回答
0

这个问题并没有引起太大的兴趣,但是我使用 Google 难以理解的Triangle库取得了相当不错的结果。

一些结果的快速预览。

如果我决定希望三角剖分在多边形内部严格统一,我可能会为 Triangle 提供一组顶点以进一步约束细分。

于 2017-04-20T17:46:40.947 回答