我如何创建GPUgem3中提到的地形

所以,我想创建这种风格的地形: http : //http.developer.nvidia.com/GPUGems3/gpugems3_ch01.html

然而,尽管我在网上search试图find在Unity内部实现这个方法,但是我找不到它。

我目前对3d噪声的理解是它只是一个2d噪声的数组,它使用-1到1的范围来确定密度值(如果在空间(x,y,z)的一个点应该有地面或空气,而2d噪声只是你想要地形的一个高度图。

我目前已经产生了统一的单工噪声,我认为可以工作(当我调用coherentNoise()函数时,似乎经历了-1到1):但是我想对它进行一些评论:pastebin.com/SiX2C31t(目前,I还没有实施行军平方algorithm,也会喜欢这方面的一些技巧)。

我一直在看几个论坛问题和Unity的答案,但从来没有发现任何东西。

我想要做的是为水下地形创造迷人的山脊和悬崖,我还希望知道如何用更低的LOD(我想它是低聚)来做到这一点。

谢谢。

这个问题可能会被closures,但是我想为您提供一些指针:

我已经完成了那篇文章的OpenGL实现,当时几何阶段是新的。 这是相当重要的,然后我不受现有的工程师的约束,但从头开始我的实施。

这篇文章包含了你需要知道的一切,我想你可能会对此感到满意。

“我怎么得到这个'密度函数'?” 这篇文章直截了当地说明如何使用八度的小3d纹理来生成代表密度体积的3d纹理。 慢慢来,再读一遍,确保你熟悉着色器的几何阶段如何工作,以及如何渲染到三维纹理。

编辑:

我相信NVidia在DirectX中有一个沉浸于其中的地方,是不是与文章有联系?