gpt4 book ai didi

c++ - 在给定的世界坐标处修改网格上的纹理

转载 作者:IT老高 更新时间:2023-10-28 23:21:27 26 4
gpt4 key购买 nike

我正在制作一个我想在其中构建地形图的编辑器。我想用鼠标增加/减少地形高度来创造山脉和湖泊。

从技术上讲,我有一个高度图,我想在我用鼠标选择的某个 texcoord 处进行修改。为此,我首先从屏幕坐标转到世界位置——我已经做到了。下一步,从世界位置到选择正确的纹理坐标让我感到困惑。我该怎么做?

最佳答案

如果您使用的是简单的高度贴图,您可以将其用作置换贴图,比如说 y 方向。基础网格位于 xz 平面 (y=0)。

您可以丢弃已计算出的世界坐标中的 y 坐标,并获得基础网格上的点。从那里您可以将其映射到纹理空间,就像映射纹理一样。

我不会那样实现它。我会将场景渲染到帧缓冲区,而不是渲染网格的纹理,而是将纹理坐标颜色编码到网格上。如果我单击屏幕空间中的某个位置,我可以简单地从帧缓冲区中读取像素值并直接获取纹理坐标。无论如何,渲染到帧缓冲区应该非常便宜。

关于c++ - 在给定的世界坐标处修改网格上的纹理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42188040/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com