SpaceEngine(非官方中文譯名:太空引擎)是一款太空模擬程式,是由俄羅斯天文學家和程式設計師 Vladimir Romanyuk 開發的一個專有的三維天文學程式和遊戲引擎。它結合了真實的天文數據和科學精確的程式生成算法,創建了一個代表整個宇宙的三維天文館。
它使用真正的天體目錄和過程生成,創建一個代表整個宇宙的三維天文館。用戶可以以任何方向或速度在空間中行進,並且在時間上向前走或向後走。它採用偽隨機數創建任意類型的天體系統(行星,恆星,星雲,星團,星系等)。
SpaceEngine 包括數十萬個真實物體,包括來自依巴谷星表(HIP 目錄)的恆星,來自星雲和星團新總表(NGC 目錄)的星團和星雲, 來自 NGC 擴展索引星表(IC 目錄)的星系,以及所有已知的系外恆星和它們的行星(部分為程式生成)。
SpaceEngine 0.9.8.0e 及之前版本將免費提供,而 0.990 及之後版本已上架 Steam。
基本介紹
- 軟體名稱:SpaceEngine
- 開發商:Vladimir Romanyuk
- 軟體平台:Windows
- 軟體版本:0.990
- 更新時間:2019 年 6 月 11 日
- 軟體語言:C++
- 軟體大小:本體:4 GB 包含 SolarSystemHD、PRO DLC:50 GB
特性,資料庫,程式生成,物理,音樂,限制,參考,星系分類,恆星分類,行星/衛星分類,音樂列表,天體腳本,模型腳本,控制,常規控制,攝影機控制,飛船控制,控制台命令,系統要求,發展歷程,
特性
程式中的星系,恆星和行星擁有分類。如根據哈勃序列劃分星系,恆星根據亮度和顏色劃分,行星則根據是否有水、大氣、主要成分等進行分類。
程式中的星球可以擁有星環、大氣、極光、雲層以及地表。某些白矮星、中子星或黑洞還擁有吸積盤。
用戶可以在程式中駕駛飛船,對於某些類型的飛船,還擁有超光速躍遷功能。
資料庫
SpaceEngine 內置 Hip 目錄、NGC 目錄和 IC 目錄,這些星表包含了絕大部分人類已知的真實天體。
PAK 檔案中的一級目錄以天體類型命名,其中存放 CSV 表格檔案與 SpaceEngine 自定義的 SC/SSS/SE 檔案。
CSV 表格只能定義單星與少量信息,無法定義複雜的天體系統,但可用於保存大量天體,並且讀取更快。
SC 檔案則彌補了 CSV 的缺陷,可以用於定義複雜天體系統,並賦予天體較為詳細的信息。
程式生成
儘管 CSV 只能用於生成簡單天體,但程式可以通過僅有的數據自動為它生成其他天體。
SpaceEngine 不僅會為已知天體生成物體,它還使用算法在宇宙中的任何地方隨機地生成天體系統。
有時,用戶並不想程式自動生成天體。因此,無論是資料庫物體,還是程式生成的物體,都可以在設定中關閉。
SpaceEngine 雖然可以生成行星地表的模型和貼圖,但是在太陽系內部將不會啟用過程生成,所以太陽系行星地表模糊屬於正常情況。
物理
程式中的物體無法超過光速,但程式為飛船實現了由明戈 · 阿爾庫貝利提出的曲率驅動。
音樂
SpaceEngine 內置了一個音樂播放器。其播放的曲目會隨附近天體類型變化而變化,切換規則 由 SpaceEngine\data\music\context.cfg 檔案定義。
播放的音樂檔案位於 SpaceEngine\data\music 目錄,檔案格式為 OGG。
限制
儘管構成天體系統一部分的物體在運動,恆星沿其軌道在多星系統中運行,但恆星自身的運動並未被模擬,星系則是固定不動,且星系未模擬出自轉。
大多數真實世界的太空飛行器都沒有在程式中提供。
程式中雖然還原了紅移等現象,但沒有星際消光現象的模擬。
當前開發狀態僅支持 Windows 系統。 Romanyuk 計畫在未來支持 macOS 和 Linux。儘管如此,macOS 和 Linux 用戶仍可嘗試在 Wine 中運行 SpaceEngine, macOS 也可通過 Parallels Desktop 安裝 Windows 系統以運行 SpaceEngine。
參考
星系分類
類型 | 描述 |
E0 ~ E7 | 橢圓星系:扁率從 E0 ~ E7 逐漸增大的星系 |
S0 | 透鏡星系:比 E7 更扁,開始出現旋臂的星系 |
Sa、Sb、Sc、Sd | 螺旋星系:中心突起,周圍有旋臂包圍的星系 |
SBa、SBb、SBc、SBd | 棒旋星系:中間由恆星組成的棒狀結構貫穿的星系 |
Irr | 不規則星系:外形不規則,沒有明確結構的星系 |
恆星分類
類型 | |
普通恆星 | O、B、A、F、G、K、M |
sdO、sdB、sdA、sdF、sdG、sdK、sdM | |
L、T、Y | |
DA、DB、DO、DQ、DZ、DC、DX、DAB、DAO、DAZ、DBZ、WD | |
WN、WC、WO | |
鋯星、碳星 | MS、S、SC、C-R、C-N、C-J、C-H、C-Hd、C、R、N |
Q | |
X | |
Z | |
P |
除白矮星、中子星和黑洞外,所有類型的天體都可以有這些光度級:0、Ia0、Ia+、Ia、Iab、Ib、II、III、IV、V 和 VI。
類型格式:光譜 + 次型(0.0 ~ 9.0,沃爾沃-拉葉星為 0.0 ~ 11.0)+ 光度級,之間允許空格。
示例:G2V、B3 III、DB3.1(sdB5 與 B5VI 相同)
行星/衛星分類
攝影機控制
操作 | 滑鼠 | 鍵位 1 | 鍵位 2 |
前進 | W | 方向鍵上 | |
後退 | S | 方向鍵下 | |
左移 | A | 方向鍵左 | |
右移 | D | 方向鍵右 | |
上移 | R | 小鍵盤 1 | |
下移 | F | 小鍵盤 0 | |
左轉 | 拉左搖桿 | 小鍵盤 4 | |
右轉 | 推左搖桿 | 小鍵盤 6 | |
上轉 | 拉右搖桿 | 小鍵盤 8 | |
下轉 | 推右搖桿 | 小鍵盤 2 | |
順時針轉 | E | 小鍵盤 9 | |
逆時針轉 | Q | 小鍵盤 7 | |
回看 | Ctrl + 小鍵盤 5 | ||
左看 | Ctrl + 小鍵盤 4 | ||
右看 | Ctrl + 小鍵盤 6 | ||
上看 | Ctrl + 小鍵盤 8 | ||
下看 | Ctrl + 小鍵盤 2 | ||
水平於物體 | End | ||
物體居中 | C | ||
前往物體 | G | ||
登入物體 | Shift + G | ||
前往物體中心 | Ctrl + G | ||
鎖向物體 | T | ||
停止旋轉 | X | 小鍵盤 5 | |
停止移動 | Z | ||
提高速度 | 小鍵盤 + | + | |
降低速度 | 小鍵盤 - | - | |
下一速度 | Ctrl + 小鍵盤 + | Ctrl + + | |
上一速度 | Ctrl + 小鍵盤 - | Ctrl + - |
飛船控制
操作 | 滑鼠/搖桿 | 鍵位 1 | 鍵位 2 |
前進 | W | 方向鍵上 | |
後退 | S | 方向鍵下 | |
左移 | A | 方向鍵左 | |
右移 | D | 方向鍵右 | |
上移 | R | 小鍵盤 1 | |
下移 | F | 小鍵盤 0 | |
左轉 | 拉左搖桿 | 小鍵盤 4 | |
右轉 | 推左搖桿 | 小鍵盤 6 | |
上轉 | 拉右搖桿 | 小鍵盤 8 | |
下轉 | 推右搖桿 | 小鍵盤 2 | |
順時針轉 | E | 小鍵盤 9 | |
逆時針轉 | Q | 小鍵盤 7 | |
左/右轉舵 | 小鍵盤 4 | 小鍵盤 6 | |
上/下轉舵 | 小鍵盤 8 | 小鍵盤 2 | |
抬起副翼 | E | 小鍵盤 9 | |
放下副翼 | Q | 小鍵盤 7 | |
收放襟翼 | |||
主引擎油門 + | + | 小鍵盤 + | |
主引擎油門 - | - | 小鍵盤 - | |
制動引擎油門 + | Shift + + | Shift + 小鍵盤 + | |
制動引擎油門 - | Shift + - | Shift + 小鍵盤 - | |
懸停引擎油門 + | Ctrl + + | Ctrl + 小鍵盤 + | |
懸停引擎油門 - | Ctrl + - | Ctrl + 小鍵盤 - | |
曲率引擎曲率 + | Alt + + | Alt + 小鍵盤 + | |
曲率引擎曲率 - | Alt + - | Alt + 小鍵盤 - | |
回看 | Ctrl + 小鍵盤 5 | ||
左看 | Ctrl + 小鍵盤 4 | ||
右看 | Ctrl + 小鍵盤 6 | ||
上看 | Ctrl + 小鍵盤 8 | ||
下看 | Ctrl + 小鍵盤 2 | ||
無 HUD | Ctrl + 1 | ||
水平 HUD | Ctrl + 2 | ||
軌道 HUD | Ctrl + 3 | ||
曲率 HUD | Ctrl + 4 | ||
停泊 HUD | Ctrl + 5 | ||
順行 | 5 | ||
逆行 | 6 | ||
徑向 | 7 | ||
反徑向 | 8 | ||
軸向 | 9 | ||
反軸向 | 0 | ||
水平 | End | ||
維持高度 | H | ||
自動駕駛 | U | ||
消除旋轉 | X | 小鍵盤 5 | |
關閉引擎 | Z | ||
關閉曲率引擎 | Alt + Z | ||
速度同步 | Shift + Z | ||
飛往目標 | Shift + G | ||
曲速前往目標 | Alt + G | ||
自動前往目標 | G | ||
轉向目標 | C | ||
參照物 | P | ||
目標 | T | ||
查看飛船軌道 | Alt + O | ||
飛船居中 | Alt + C |
註:程式說明與默認鍵位參考位於檔案 SpaceEngine\license\readme_eng.txt 以及 SpaceEngine\config\keys.cfg 中。
上表中所有觸發上述控制(常規控制、攝影機控制、飛船控制)的按鍵均為軟體默認的按鍵,玩家可在設定界面的“控制”一欄中對其進行自定義。
SpaceEngine 不區分命令大小寫。
控制台命令
數據類型 | 命令/變數名 | 說明 |
Set | 設定變數的字面值,類似批處理環境變數設定命令,變數與值之間需用空格分隔,無需賦值等號。 示例: Set FPS true// 顯示幀率 Set LandLOD 2// 設定地形層次為 2。 | |
bool 表示布爾值,用於邏輯判斷,其字面值只有兩個:true(真)與 false(假)。 此類型變數的真假切換無需 Set 命令,賦值時需使用 Set 命令設定。 | ||
int 表示整型值,整型值只能表示整數,且這個整數的最大最小值都有限制。 此類型變數需使用 Set 命令設定。 | ||
float 表示單精度浮點值,浮點值可以表示帶小數的數,與 int 一樣也有範圍限制,但它的範圍要大得多,而且有精度限制。 此類型變數需使用 Set 命令設定。 | ||
double 表示雙精度浮點值,較 float 有更大的數值範圍和更大的精度。 此類型變數需使用 Set 命令設定。 | ||
bool | FPS | 切換 FPS 顯示 |
bool | HardwareCursor | 切換硬體/軟體游標 |
bool | HideCursor | 隱藏游標 |
bool | EditGUI | 切換 GUI 編輯模式,在“編輯”模式中可以移動和調整 GUI 元素的大小(不會保存更改) |
bool | FindEarths | 在使用星體瀏覽器時記錄找到的類地星球 |
bool | Gravity | 飛船重力開關 |
bool | Aero | 飛船空氣動力學開關 |
bool | UFO | 飛船助推器無限加速開關 |
bool | NoClip | 飛船 & 天體碰撞檢測開關 |
double | ClipHeight | 攝影機-地表碰撞判定高度(km) |
double | ClipZNear | 攝影機裁剪平面距離(km) |
int | ShipDrawMode | 切換飛船渲染模式(參見 SpaceEngine\config\main.cfg) |
bool | DrawSky | 天空渲染開關 |
bool | DrawLand | 地形渲染開關 |
float | AtmoBottomOffset | 大氣散射偏移 |
float | CloudsSpeed | 雲層速度係數 |
int | LandLOD | 地形層次 |
bool | LandRLSort | 渲染前排序地形 |
bool | LandFiltNearest | 臨近紋理過濾開關 |
bool | LandProcDetail | 切換真實行星地形最佳化(尚未實現) |
bool | LandVSFetching | 切換地形渲染模式(正在測試) |
double | LandSpareFactor | 額外地形裁剪縮放(解決地上有洞的 bug) |
int | LandHeightmapFormat | 高度圖格式(設為 16 修復 Intel 的 Bug) |
int | LensFlareMode | 鏡頭光暈模式:0(簡單)1(正常)2(超級) |
bool | ScreenshotAlpha | 截圖透明通道(在支持 RGBA 的格式(jpg 除外)中保存 Alpha 透明度通道) |
float | fxaaSubpix | 調整 FXAA 抗鋸齒 |
float | fxaaEdgeThreshold | 調整 FXAA 抗鋸齒 |
float | fxaaEdgeThresholdMin | 調整 FXAA 抗鋸齒 |
float | logC | 調整對數深度緩衝區 |
float | logFar | 調整對數深度緩衝區 |
float | logOffset | 調整對數深度緩衝區 |
bool | OculusWarp | Oculus Rift 曲面變換開關 |
bool | OculusChroma | Oculus Rift 色差矯正開關 |
bool | OculusMirror | Oculus Rift 主螢幕顯示開關 |
bool | MipmapsGUI | Oculus Rift Fish Eye 模式中 GUI 的 mipmap 紋理映射開關(提高質量) |
bool | MipmapsFrame | Oculus Rift 中幀緩衝的 mipmap 紋理映射(提高質量) |
bool | MipmapsWarp | 黑洞和曲率場效果的 MipMap 紋理映射開關(提高質量) |
bool | MipmapsLand | 地形紋理映射開關(重載星球以觀察效果) |
int | MipmapsMode | 星球 &飛船紋理映射生成模式:0(禁用)1(OpenGL 函式)2(SpaceEngine 函式) |
bool | FastCubemap | 稀疏立方體貼圖面更新開關 |
bool | TestGrid | 為不同的立方體貼圖面或立體緩衝區顯示不同的天球格線顏色 |
float | Blur | 恆星動態模糊長度:0(自動) |
bool | LogTimeStamp | se.log 時間戳列印開關 |
bool | LogThreadStamp | se.log 執行緒 ID 列印開關 |
bool | NebulaLighting | 星雲光照開關(0.9.7.1 和 0.9.7.2 中被禁用) |
float | CosmHoriz | 星系紅移比例長度 |
float | ParticleOverbright | 點光源亮度 |
float | ParticleOverbrightMap | 空間地圖點光源亮度 |
bool | Benchmark | 載入/生成基準數據 |
int | MaxThreads | 最大執行緒數 |
bool | BuildingCollision | 實體碰撞檢測 |
bool | ShowBuildingOctree | 顯示實體碰撞箱 |
bool | ShowBuildingPolys | 顯示實體三角面 |
bool | ShowBuildingLines | 顯示實體模型線 |
bool | ShowBuildingVerts | 顯示實體頂點 |
bool | TestBuildingOctree | 僅顯示選定實體碰撞箱 |
bool | TestBuildingDraw | 僅渲染測試選擇畫刷 |
bool | DrawBuildingLightRadius | 光球邊界渲染 |
bool | ShowBuildingEntity | 實體渲染開關 |
int | BuildingTestBrush | 設定測試畫刷 |
int | BuildingTestPoly | 設定測試多邊形 |
int | BuildingTestLeaf | 設定碰撞箱 |
int | BuildingCollisionSteps | 碰撞檢測疊代次數 |
float | testFloat | 用於各種測試 |
int | testInt | 用於各種測試 |
註:控制台命令參考位於檔案 SpaceEngine\docs\console.txt 中。
系統要求
最低 | 推薦 | |
處理器 | Intel Pentium G3240 或 AMD FX-4100 | Intel Core i5 4430 或 AMD FX 8350 |
記憶體 | 4 GB RAM | 8 GB RAM |
顯示卡 | NVIDIA GeForce GTX 950 或 AMD Radeon HD 8760 | NVIDIA GeForce GTX 970 或 AMD Radeon R9 290 |
硬碟 | 4 GB | 50 GB (附加 46 GB Solar System HD DLC) |
作業系統 | Windows 7(x86-64) | Windows 10(x86-64) |
發展歷程
最新的版本是 0.990(新版為 64-bit 程式,需要使用 x86-64 系統才能運行,自 0.990 開始,SpaceEngine 將不再支持 x86-32 系統),免費舊版可以從官網下載。隨著新版本開發, Romanyuk 定期編寫部落格分享其開發狀態。除了擴展和完善天文館軟體外,開發者還表示他打算將其引擎授權給其他開發人員用於製作遊戲。
版本疊代:
0.991(尚未發布)
更新版本略
0.990.37.1705 ~ 更新的版本(Unicode 編碼正式使用)(2019 年 8 月 1 日)
0.990.37.1670 ~ 0.990.37.1700(Unicode 編碼測試)
0.990.33.1620 ~ 0.990.36.1665(ANSI 編碼)
0.990(註:0.990 的版本號已更改為 0.990.xx.yyyy 格式)(第一個版本:2019 年 6 月 11 日)(64-bit)(Steam)
0.9.8.0e(2017 年 8 月 19 日)(作為補丁覆蓋在已安裝的 0.9.8.0 上)
0.9.8.1(因改動過多而被跳過)
0.9.8.0(2016 年 7 月 30 日)
0.9.7.4 RC3(2016 年 5 月 7 日)
0.9.7.4 RC2(2016 年 4 月 4 日)
0.9.7.4 RC1(2016 年 2 月 26 日)
0.9.7.3(2015 年 4 月 17 日)(作為補丁覆蓋在已安裝的 0.9.7.2 上)
0.9.7.2(2014 年 12 月 26 日)註:該版本無法在 Windows XP 中運行。
0.9.7.1(2013 年 12 月 25 日)
0.9.7.0(2013 年 5 月 1 日)
0.9.6.2(2012 年 7 月 21 日)(補丁)
0.9.6.1(2012 年 7 月 8 日)(補丁)
0.9.6.0(2012 年 7 月 5 日)
0.9.5.1(2011 年 11 月 18 日)
0.9.5.0(2011 年 11 月 18 日)
0.94(2011 年 6 月 11 日)
0.93(2011 年 4 月 24 日)
0.91(2011 年 3 月 29 日)
0.90(2011 年 3 月 6 日)(補丁)
0.85(2011 年 1 月 4 日)(補丁)
0.84(2011 年 1月 1 日)
0.74(2010 年 6 月 19 日)