gpt4 book ai didi

windows-runtime - 通过深度测试绘制地形?

转载 作者:行者123 更新时间:2023-12-02 20:38:49 25 4
gpt4 key购买 nike

我正在尝试在不平坦的地形上渲染几何形状(从高度图加载/形状几何图形也是根据高度图上的平均高度生成的,但它们并不完全适合)。我遇到以下问题 - 有时地形会通过如图所示的形状显示。

Open Image

我需要在启用深度测试的情况下绘制地形和形状,这样它们就不会阻碍场景中的其他对象。有人可以建议一个解决方案来确保形状始终渲染在顶部吗?提升它们并不是真正可行...我需要替换地形上实际像素的颜色,而在像素着色器中执行此操作似乎太昂贵了..

提前致谢

最佳答案

我遇到了类似的问题,这就是我解决它的方法:

  • 首先渲染地形并保留深度缓冲区。不渲染任何对象
  • 渲染您想要放置在地形上的形状的实体边界框。
  • 您需要确保您的边界框覆盖了所有形状覆盖的高度范围
  • 过于保守的估计是使用整个地区的全局最小和最大海拔地形
  • 在像素着色器中,您读取深度缓冲区并重建世界空间位置
  • 检查该位置是否在您的形状内
  • 在您的情况下,您可以检查其 xy (xz) 投影是否在给定距离内给定圆的中心
  • 将此位置转换为形状的局部坐标系并计算所需的颜色
  • 渲染目标上的 Alpha 混合

此方法可生成与地形表面完美对齐的形状。它也不会产生任何文物并适用于任何地形。可能的缺点是它需要使用延迟式着色,我不知道你是否可以做到这一点。不过,我希望这对您有所帮助。

关于windows-runtime - 通过深度测试绘制地形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22556663/

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