我有一个 3d 网格,这是一个地形。顺便说一句,这运行得非常好,但我想让形状在这个地形上移动。这些形状在地形上是平坦的并且是斑点状的:它们可以改变形状并且应该遵循地形的轮廓和高度图。这些形状可以画在风景上或流过风景,没关系。
这些形状是指在地图上移动的军队块,这应该是实时发生的!另外:它们是二维凸包形状。它们也只是一种具有 alpha 值的颜色(例如具有 alpha 0.25f 的蓝色)。
唯一的问题是:我不知道该怎么做,问题是:谁能告诉我怎么做?
我的第一个想法只是复制地形顶点矩阵,将其向上推一点,使其位于地形之上,将此缓冲区加载到 VBO 并根据所需的位置和形状更新索引缓冲区,然后绘制形状. 这是相当缓慢和低效的,尤其是在形状移动和变化时。此外,高度图的分辨率为 175x175,因此运动一点也不平滑,而是锯齿状。
然后我想,但对这个区域比较陌生,将形状轮廓更新到地形的片段着色器,让着色器决定一个点是否位于该区域并相应地改变颜色。这也是一个非常缓慢的选择,但如果有人看到了这样做的潜力和好方法,请告诉我!
下一个选项是直接在纹理上绘制,该纹理仍处于失败阶段。如果有人对如何将场景绘制到平坦区域然后将其放在地形网格上有任何好的想法,那就太好了!
那么,是否有人有在地形上绘制形状(或多个)的解决方案?那将是真棒。提前致谢!