Image Image Image Image Image

24

7 月

宇宙漫游指南

  • By IanGoo

虽然我把这篇文章放在了“Game”里面,但是严格来说,Space Engine很难说是一个“游戏”。

它更像Google Earth,是一个旅游观光软件。只不过,它不是让人在地球上乱转用的,而是在带着你在一个庞大的宇宙中巨细无靡地观光的。

我说“巨细无靡”,那就真的是……从大,到小,没有任何死角。“正经”的太空游戏我玩过一些,X Universe系列自不必说,不过,X玩的是里面强悍无比的经济系统,对于宇宙本身的壮美着墨不多——主要就是看看Skybox。KSP非常硬核,要玩的话物理功底不能差。使命召唤:无限战争……哦……那个算吗?

唯有Space Engine,可以让人忘掉一切“游戏”的东西,只痴迷于宇宙本身的风景。

它是个什么来历?

Space Engine,算是一个个人性质的作品。它的开发者是俄罗斯天文学家兼码农
Vladimir Romanyuk。关于这位神人的信息我并没有找到太多信息,甚至连照片都没有找到太多。

不过,从Space Engine的质量来看,开发者是程序和天文学双修的背景就很好理解了。

直到现在,Space Engine都没有登陆任何游戏发放平台,一直在官方网站http://spaceengine.org/上释出二进制文件。截至本文写作的时候,最新版为0.9.8,但是作者表示,将在0.9.9版本的时候,提交到Steam。对于广大Steam玩家来说,喜加一的时候到了。不过,这东西是免费的。作者应该是有全职工作,在业余时间开发的Space Engine。

大宇宙

上面这张图就是Space Engine的一张截图。

看着这满天的繁星,让我想起了2001太空漫游里面那句著名的台词。

然而很不幸,鲍曼先生,你搞错了。

图上那些光点,并不是星星。而是……星系!为什么它们看起来边缘发毛?星系都是有很巨大的星系晕的。这样的星系晕让星系看起来不像恒星那样呈现出一个光点。

Hubble太空望远镜(HST)拍摄的星系全景

不信看上面这张HST拍摄的照片。当然这是放大了之后的,如果拉远了,就是一个个长毛的星星。但是,真真让我感到震惊的是,如果放大Space Engine的截图,会看到有些星系呈红色,有些则显得发黄。这样的现象在HST的照片里同样存在。

这是怎么回事?我们知道恒星有不同的颜色,因为它们有不同的光谱。但是星系,包含那么多颗恒星,理论上应该颜色是比较统一的。那么为什么会发黄发红?

答案:宇宙学红移。

简单点说,我们的宇宙在膨胀——这是时空本身的膨胀。而且,离我们越远的物体,远离我们的速度也就会越快。

从另一个角度来说,光是电磁波,多普勒效应一样会出现在光波上。当一个物体以极快的速度远离我们的时候,它发出的光波波长对于观测者来说,就会变长——看起来也就越红。这就是宇宙学红移。

作为天文学家,开发者肯定是知道宇宙学红移的。所以,在星系尺度上,我们看到了这么好玩的现象。

在这样的大尺度上,有一个缺憾,就是作者并没有制作出星系集群。本来,在大尺度结构上,星系的分布并不是均匀的。但是在Space Engine当中,这种应当存在的不均匀并没有体现出来。

如果,我们将视角开始缩小呢?

星球表面

这个圆形的朦胧的光斑,实际上是距离银河系最近的一个超级星系——M87。我们走近一看,这真的是一个超级星城。

M87内部的恒星数量、密度都远非银河系或者M31仙女座星系这样的穷乡僻壤可比的。

It’s full of stars!

然后,我们可以开启Space Engine当中一个非常有意思的功能——搜索。我们可以指定一个搜索半径,然后搜索符合条件的恒星或者行星。

然后,我们发现了这个……

是的,我找到了不少黑洞,这是其中一个。

在视界之外,Space Engine还非常形象地模拟了引力透镜。

同样的引力透镜还出现在中子星周围,当然,没有黑洞那么明显。不过,如果下载一下,然后搜一个中子星,拖动一下,可以很明显看到周围光线的扭曲。

搜行星当然也是OK的。而这时候,Space Engine的强大在能真正显露无疑。

我们可以看到行星表面的水体、火山、地形起伏、环带和极光。而且,这里的每一颗行星,都是可以这样登陆的。

时间一长,自然会积累下一些非常漂亮的风景。

上面这些,都是我自己发现的风景。

且慢!

Space Engine到底有多大?

由于会存在用户的截图、Shader Cache等东西,所以大小不一定,不过,我的Space Engine目录总大小为1.67G。

1.67G,装下整个宇宙。这是怎么做到的?

动态生成技术

这就是一种比较新颖的方式——动态生成技术。

动态生成技术指的是不在游戏或者软件的内部存储地形或者贴图数据,而是在游戏过程中通过算法自动生成。采用这一技术的游戏或者软件并不少。比如著名的No Man’s Sky,一个比较古老的游戏Evochron Mercenery

正因为这样,Space Engine才可以在极为有限的空间内,将数量惊人的星球表面呈现给玩家。

我没办法统计Space Engine当中总共有多少颗星球,可能比无人深坑还要多的多。

可是无人深坑里可以开飞船啊……

嗯,Space Engine也可以

上图就是在Space Engine当中驾驶的一条飞船。

需要注意的是,Space Engine里开飞船可比无人深空里要严谨得多,玩家需要小心地根据轨道来驾驶,如果飞船一点速度没有就悬在星球那,一定会往下掉,一段时间后摔在行星表面。需要减速,要么用反推,要么将飞船掉个个开主推力火箭。总之,设定很接近KSP。

当然,Space Engine在姿态控制上还是给了不少辅助,可以帮助玩家比较轻松地调整到需要的姿态。

在Space Engine当中,飞船总共有四个级别:

  • Drone,无人的小探测器
  • Shuttle,航天飞机/空天飞机,在大气层内有借助空力飞行的能力
  • Planet Ship,不具备大气层内飞行能力,但是强悍的推力可以胜任行星系统内的飞行任务
  • Star Ship,除了最强的推力、加速性能,Star Ship还有超空间跳跃机制,可以从一颗恒星跳跃到另一颗恒星

除了Space Engine自带的几条飞船,玩家还可以自己设计、导入飞船。不过这个就比较复杂,我也没有太多研究。而且开飞船并非Space Engine的精髓。

前($)景

目前,Space Engine仍然是免费的。

以开发者的一己之力来说,这已经是非常厉害了。但是Space Engine是闭源的。这就让我有了一些疑虑。

第一,它的源代码并不开放,第二,它免费,第三,开发团队规模极小。

这样的产品,往往可持续性堪忧。除非作者真的是很有钱又很有闲,完全凭借自己极高的热情来开发这样一个产品。一个产品若想要持续性发展,最好还是找到自己的盈利路线。

Space Engine,目前还没有看到盈利路线。

而且,从介绍看,以及从这个东西的名字看,它也可以充当一个游戏引擎。实际上,如果Space Engine真的被某个大厂相中,然后选为自己的太空游戏引擎,那也是非常不错的。

只是我们都不知道作者的计划是什么。不管怎样,这样一款优秀的观光兼科普软件,我还是希望它能走的更远一些。

至少坚持到我儿子长大了,整天缠着我问“为什么”的时候,我可以打开它普及一些天文知识吧……

最新的更新

关于上面的盈利问题,显然作者已经找到了方法:上线Steam。

Space Engine 0.99 on Steam

售价80元RMB,还是值得支持一下独立作者的。

Tags |