Stellariumの可能性

プラネタリウムのフリーソフトとして、もはや定番の一つになった感のあるStellarium。
https://stellarium.org/ja/
この業界にいる人なら、きっと一度はその名前を聞いたことがあると思います。実際使っている人も多いでしょうし、ドーム投影機能も備えているので、移動プラネタリウムで活用している人もいるかもしれません。

私がいまメインで使っているNightshadeは、もともとStellariumから派生したフリーのプラネタリウムソフトです。当然、スクリプト仕様にも互換性がありました。スクリプトとは、プラネタリウムソフトを自動運転させることのできる手順のようなものです。あらかじめ各シーンやシナリオに沿ったスクリプトを作っておくことで、投影のときはそれを自動実行させながら簡単にライブ解説をすることができます。

ところが、StellariumのコアシステムがQtベースで開発されるようになってから、このスクリプト仕様も大きく変わりました。具体的には、ECMAScriptで内部APIを呼ぶ仕様になったのです。プログラミングをやったことのない人にとって、これはかなり難解です。
その他にも、

  • 星や天の川などの描画があんまりリアルじゃない
  • 星座の線や絵が日本で親しまれているものと違う
  • 手動操作環境がOSD設定ウィンドウやアイコンのみで不便(設定ウィンドウがドームに投影されちゃう)

といった部分で個人的に違和感や不便さを感じていたので、これまではほとんど触らずにきました。

実は食わず嫌いだった?

ところが最近になって、星などの描画はパラメータ調整で、天の川の描画はテクスチャの加工で改善できることがわかりました。実際にチューニングを施してみたのがこちらの星空です。低い解像度でキャプチャーしたのでイマイチに見えるかもしれませんが、かっこういい感じに変えることができます。

星座の線や絵も、JSON形式のデータ設定ファイルを編集したり差替用イラストを用意することで変更可能です。
データもイラストも現在Nightshadeで使っている独自制作のものがあるので、それをコンバートすれば使えることがわかりました。

そして、難解になったスクリプティング仕様ですが、これは単純にAPIを覚えればいいだけ。スクリプトコマンドを少しずつ覚えて使ってきたこれまでと変わりません。
さらに、用意されたAPIは、HTTPリモート制御で外部からも呼び出すことができるのです。つまり、独自のGUI手動操作環境をブラウザベースで開発して、Stellariumの星空投影をコントロールできる可能性があるということです。

以前メーカに勤めていたころ、研究助成金を獲得してプラネタリウムコンソールのユーザーインターフェースを研究していたことがあります。
そのときお手本にしたのは、航空機のコクピット。
膨大な量の情報表示や操作環境を無理なく無駄なく間違いなく提供するアビオニクスを、プラネタリウムの操作環境に応用することはできないか?と考えたのです。
そのときのアイデアが、オリジナルGUI操作画面という形で実現できるかもしれません。

すべてのピースが揃うか?

ということで、やる気と時間さえあれば、これまで食わず嫌いでStellariumを敬遠する理由になっていた問題をすべて解決できそうだということがわかってきました。
これには、錆びつきかけていたプログラミング脳も久しぶりにワクワクしてしまいます!

うまくいけば、移動プラネタリウム投影用に特化したStellariumの拡張システムを作って公開できるかも。

エアドーム、投影システム、上映番組。
これまで必要なピースをすべて自分の手で生み出してきました。ただ、あと一つ足りないピースがありました。
プラネタリウムソフトという、その最後のピースをゲットしてパズルを完成させることができれば、それで移動プラネタリウムの普及や発展にさらに寄与・貢献できれば、ワタクシもう思い残すことは何もないかもしれません(笑)

この壮大なる?拡張システム開発プロジェクト、ぜひ今後の進捗にご期待ください!

この記事をシェアする
  • URLをコピーしました!
目次