【发布时间】:2020-01-25 19:46:11
【问题描述】:
生成程序 3D 世界
我正在为 Unity3D 中的游戏生成程序世界。我已经成功地通过几个柏林噪声函数生成了不同高度的地形。
我根据 16x16 块中每个点的 X、Y 坐标对函数进行采样。每个块都是在不知道其邻居的情况下渲染的。
目前世界是平稳多变的,运行良好,但我正在努力弄清楚如何实现以下内容:
悬崖生成
我正在寻找一种方法来修改我的噪声函数,以便它产生一些陡峭的“截断”,这些截断会产生悬崖并可能产生悬垂。
有什么技术可以让这更容易吗?
河流生成
我也在寻找创造河流的最佳方式。我相信我将不得不进行第二次传递或创建一个单独的噪声函数,该函数可以在生成时创造出世界,但是当块彼此独立时,我再次在努力实现这一点。
非常感谢任何指向某些算法或有关如何完成此操作的一般概念的链接。
【问题讨论】:
标签: c# unity3d procedural-generation perlin-noise