3d 生成无缝、可平铺的三维噪波

3d 生成无缝、可平铺的三维噪波,3d,generator,noise,3d,Generator,Noise,我需要生成一个无缝、可平铺的3D噪波,看起来像一个详细的柏林噪波。多个论坛说“对于可平铺的3D,你需要6D噪音”,但没有解释如何使用 到目前为止,我发现的是lib“意外噪音”,它提供了我需要的高达6维的单纯形噪音,但没有解释如何从中生成3D无缝噪音。 它将在C#中实现,但我在翻译其他语言时没有问题 希望有人能帮忙,提前谢谢 Dom我不明白为什么需要6D噪声才能使功能无缝;据我所知,实现一个3D伪随机函数就足够了,该函数通过使用一些模数计算在边界处包裹索引而变得可平铺。这种三维噪声可以作为无需任

我需要生成一个无缝、可平铺的3D噪波,看起来像一个详细的柏林噪波。多个论坛说“对于可平铺的3D,你需要6D噪音”,但没有解释如何使用

到目前为止,我发现的是lib“意外噪音”,它提供了我需要的高达6维的单纯形噪音,但没有解释如何从中生成3D无缝噪音。

它将在C#中实现,但我在翻译其他语言时没有问题

希望有人能帮忙,提前谢谢


Dom

我不明白为什么需要6D噪声才能使功能无缝;据我所知,实现一个3D伪随机函数就足够了,该函数通过使用一些模数计算在边界处包裹索引而变得可平铺。这种三维噪声可以作为无需任何附加机制的可平铺三维柏林噪声的基础;当柏林噪波的“八度”被添加时,当要在其中插值的噪波值重复时,会自动生成无缝线。

解决此问题的一种方法是将平铺坐标映射到圆环上。然后将圆环坐标作为3d噪波函数的参数。圆环是可以平铺的,因为平铺的顶部与底部相连,左侧与右侧相连。

这正是我的想法,但我没有重写我找到的噪波函数。问题是,我不理解排列所选随机字节索引的方法。我试着改变这个:好吧,基本上你有一些三维柏林噪音,问题是要让它在所有维度上无缝地平铺?正确。它后来被翻译成Unity3D颜色数组并用作纹理3D。深度信息是必需的,不仅仅是对立方体进行纹理处理。我不希望它被人为地混合。找到了另一个页面和一个我想要的样本。我得到了一个无缝的3D噪音,并将使用它,直到我找到任何其他解决方案。谢谢你的关注!资料来源: