2015-07-03 93 views
6

问题

我想用WebGL从低轨道(这里~300km)建立一个现实的地球视图。也就是说,在网络上,所有这一切都意味着,而且在移动设备上。不要停下来在这里阅读:为了让这一点不那么困难,用户可以随处看,但不能平移,因此视图只涉及3000公里宽的小区域。但是,几分钟后,观测者会看到一颗卫星,随着地球自转的轻微变化等,用户又回到原来的位置。因此,云层不可能一直处于相同的位置。WebGL地球:如何制作云

我实际上还没有能够包括城市的灯光,极光,闪电......除了云。我看过很多实时渲染激情和研究人员的演示,但他们都没有一个很好的,现实的云层。不过,我确信我是100(...)00人想要这样做,所以请让我高兴。

几个问题都暗示:

  • 什么投入使用的云?气象实况数据?
  • 什么渲染可能性?具有云图的透明图层,使用着色器进行修改?几乎没有透明的图层来获得体积渲染的感觉?但是如何互相投射阴影:唯一的解决方案就是使用网格?或者阴影可以每x分钟进行一次程序计算并映射到服务器上?

少数规格

这里有一些想法总结什么,我还没有看到,按重要性排序:

  1. 云隐藏在地球的60%。

  2. 云散射城市& lightnings'lights并在晚上有瑞利散射。

  3. 在这个距离,视差效果是可见的,甚至相当真棒与最小的云彩。

enter image description here

据我所看到的,甚至是昂贵的实时气象在线资源是没有用的:他们的目标是雨天或暴风雨云与紫外线和红外线光波的帮助,所以他们不抓100%,并且不给我们都知道的'正常'观点。此外,在可见光下拍摄的罕见优质云纹理几乎不能区分地面和云层:有时一条5000公里长的海岸无处可见。服务器可能能够使用这些图像来创建更好的纹理。

当我查看这些图片时,我想象的是,最简单的方法是从包含不同模型的数据库合并几个漂亮的云网格,然后在用户经过时稍微转换着色器中的网格。如果90分钟后他回来时仍然在这里,不管模型是否再次不同。然而,飓风不会消失。

您对此有何看法?

+3

我认为这将是更好地在同一时间解决您的显卡一个问题:如何提供云层(或几个),如何计算/模拟这些层中的云,如何从这些结果中投射阴影,以及通过城市提供的光(以及来自闪亮的海洋表面的反射)照亮云,如何包括光如云银衬或极光在着色器等等......你的问题只有很多不同的部分,对于SO格式不适用。 – BeyelerStudios

+0

@BeyelerStudios事实上,我对答案的格式并不十分精确。我需要的是一个广泛的想法,所以我和未来的用户有关于如何使它的一些线索。我编辑问题 – Atrahasis

+2

然后请在基于物理的轻型运输中参加一门课程,因为您在您的问题中请求了演讲的内容。 – BeyelerStudios

回答

2

对于这种影响有可能只是一种方式正确做到这一点,那就是:

  1. 体素地图+体绘制可能与背光线追踪渲染

    由于你的位置是固定的,所以它在内存要求上应该不那么困难。您需要实施MIE和瑞利散射。散射可以简化很多,仍然在寻找好看到

    体素映射把手轻差距,阴影和散射相对容易的,但需要大量的存储和计算能力。所有其他2D技术只是通常痛苦地围绕什么3D体素图本身做很少的努力。例如:

  2. 程序云图发电机

    所以你有什么渲染你需要这个每种类型的云。有库/演示/例子在那里看到: