所以我想创建一个基于浏览器的地球互动实时动画以及绕太阳转的其他行星...我从哪里开始?

时间:2010-08-30 19:18:54

标签: javascript html opengl

我想创建一个基于浏览器的交互式实时动画,根据一天中的时间和一年中的时间显示地球绕太阳转。此动画还应(最终)显示太阳系中的其他行星,用户应能够在太阳系周围平移并从不同侧面看到它(通过点击拖动,滚动等)。

我不认为它有任何实际的应用,但我喜欢在宇宙中发现的艺术价值......所以开始这样做会很有趣,我可能会在这样做时学到一些东西。

我对行星物理学没有任何经验,但如果给出了很好的信息来源,我可能会理解它。我确实有一些Web开发经验,使用JavaScript,HTML,CSS,Python等语言。

现在,问题:

  • 最重要的是,我将如何开始 像这样的项目?

  • 我在哪里可以获得有关的信息 地球和地球的旋转 太阳系中的其他行星?

  • 我应该使用/学习哪些语言?

  • 你还有什么其他的想法 这个想法?你有什么功能 认为对一个人来说很有意思 像这样的项目?

这个想法非常冲动,尤其是在当天晚些时候...当我看着窗外,看到建筑物越来越暗,我也在想象地球是如何慢慢旋转的围绕着自身以及周围的太阳,我认为能够从外部看到这一点是一个非常好的景象。

希望得到一些反馈。干杯!

3 个答案:

答案 0 :(得分:3)

听起来很酷!我会受到鼓舞的工作(很少完成; - )。

请参阅this related question on graphical frameworks for browsers

我从一开始,你的观众是什么?例如。大多数互联网用户和大多数主流浏览器?

我的偏好是使用O3D(基于WebGL),但这要求您不要介意您的艺术作品只能在流行的浏览器中运行,而不能在IE中运行。编程将在JavaScript中完成。然而,这将是一个挑战。我的下一个问题是,在早晨的冷光下,我是否仍然对这个项目投入了足够的灵感来投入大量时间学习语言和图形库?

另一个问题是,您是否希望在3D中执行此操作?它听起来像,但在太阳系的2D表示中也有美学价值,因此值得一提。

如果您还没有编程或3D图形方面的经验,可以考虑Processing。它针对的是艺术家而不是程序员,它有applet可以在浏览器中运行。

对于行星,你基本上会做纹理球,至少要开始;请参阅this tutorial了解WebGL或these samples了解O3D。

还要搜索开源太阳能系统模拟项目......有很多项目,你可以窃取数学算法。 : - )

答案 1 :(得分:2)

对于一个问题,这是很多问题;)

无论如何,我先做一些计划:将大任务划分为子任务(例如天体力学(“行星如何移动” - see e.g. here),在代码中表示 < / em>在3D,纹理和着色,动画?)并开始研究/处理这些,当你遇到问题时请回到这里。语言并不重要,真的 - 任何允许你渲染3D场景的东西都可以。

也许你可以让Stellarium适应你的项目 - 毕竟,它确实提供了某个方向上空间中某个点的视图。它的目的是另一种方式 - 从地球向外看,但我会说代码叉可能是可行的。

答案 2 :(得分:2)

如果我要这样做,我首先要学习如何使用Javascript canvas元素来绘制内容。写一些代码在屏幕上绘制一些圆形/椭圆形用于行星位置。然后添加一些动画。最后,我想弄清楚如何在Javascript中进行所有天体力学计算。

其他人可能会从天体力学开始,然后再计算出图形。只需选择你觉得“有趣”的部分,然后潜入。