2

我正在制作一个世界生成器,它将使用柏林噪声和有利于形成盘状岛屿的加权梯度生成地形。我已经到了可以创建世界温度图的地步,其中靠近赤道的低海拔地区更受青睐,水总是更冷。但我无法找到应对风雨的最佳方式。我想我可以创建一个湿度图,然后以某种方式将其播放到风中。这个视频是我大部分灵感的来源。在其他地方,他简要谈到了每当风吹到一座山上时,它后面的区域就会没有下雨。我对他的风的一个大问题是他如何确定风的方向。

所以基本上我要问的是如何扩展我的世界生成器来模拟风、雨和天气?由于雨和天气可以说是一回事,因此出现的另一个问题是如何根据世界生成湿度图?一旦模拟开始,如何处理天气?

这是我的温度图的图片。我正在考虑让它不那么连续。

4

2 回答 2

3

我是您在问题中链接到的视频的作者。

很抱歉,当您三个月前询问时我没有回复此问题,但我刚刚在 Reddit 上看到了您的消息。您的帐户似乎已被删除,所以我在此处复制我的回复。

在风向方面,这只是一个简单的模型,所以我作弊并随机选择了一个角度。我正在研究一种随着风和天气变化而“进化”的模拟,但最大的问题是让它足够快以供使用。

对于风和雨,我所做的是模拟一个正方形的粒子,所有粒子相隔一个像素,并实现为一组用于风高程的浮子和一组用于风湿的浮子。开始时的风湿度设置得相当高,以表示它是海上携带的潮湿空气。

然后我在地图上沿风向移动云。当地图的高程(高度)大于风高时,则风高上移至该高程。否则,风的高度会缓慢下降。当世界海拔高度远小于风的海拔高度时,这个简单的模型可以用作气压的非常简单的近似值。我的视频将原始风海拔高度着色为蓝色,但您可以将葡萄酒海拔高度和陆地海拔高度之间的差异着色,以获得更有趣的效果。

云中的每个点在每一步都会失去一些水分,具体取决于温度(寒冷地区会失去更多的雨水,特别是在山区)。一旦它失去了所有的水分,它就没有雨了,所以会出现“雨影”,如果温度很高,就会出现沙漠。您可以通过让风在湖泊或海洋上空获得更多水分来改进此模型。

寻找风粒子失去水分的速度或最初有多少水分的最佳常数只是反复试验,直到我找到了一个看起来不错的组合,并在典型地图上为我提供了各种地形类型。

希望对您有所帮助——祝您的项目好运!让我知道你是怎么办的。

于 2013-09-29T15:39:40.897 回答
1

风是由气压差异引起的。即,一些空气将从高压区域移动到相邻的低压区域以使其均匀。

一个位置的气压受多种因素的影响,例如气温、地温、云量、日照量、空气湿度等。

还需要考虑多层大气。

它非常复杂,但至少,您需要模拟气压。

编辑:作为对此事的介绍,我建议:https ://en.wikipedia.org/wiki/Numerical_weather_prediction

于 2013-06-10T13:41:37.750 回答