☀ astro-cast · solar system observatory
Three.js + WebGL でブラウザだけで動く 太陽系 3D シミュレーター。 水星 → 海王星 + 月 がリアルタイムに公転 / 自転、 ドラッグで視点回転、 時間スピードを 1× から 100,000× まで上げて長い周期も眺められる。 各惑星をクリックすると実天体データを表示。 サインアップ不要、 ブラウザ完結。
[ ./how_it_works ]
step / 01
シーン内をマウスドラッグで自由に視点回転、 スクロールでズーム。 上から太陽系を俯瞰したり、 惑星のすぐ近くまで寄ったり。 OrbitControls の慣性付き。
step / 02
1× (実時間) / 10× / 100× / 1,000× / 10,000× / 100,000× の 6 段階で時間を加速。 1,000× で地球が約 1 秒に 3 日進む — 月の満ち欠けがリアルタイムで見える。
step / 03
シーン内の惑星 (または下のボタン) をクリックで視点追従 + 情報パネル。 実半径・公転周期・自転周期・平均表面温度・衛星数 の天体データを表示。
[ ./faq ]
WebGL を扱う JavaScript ライブラリです。 本ツールは Three.js の PerspectiveCamera + OrbitControls + SphereGeometry + MeshStandardMaterial + PointLight (太陽光源) + Points (星空背景 1,600 点) を組合せて、 太陽 + 8 惑星 + 月 + 軌道線 をリアルタイムにレンダリングしています。
周期は実データ近似 (例: 水星 88 日 / 地球 365.25 日 / 木星 4332.59 日)。 公転半径と惑星サイズはシーン上では誇張しています — 実比だと太陽が画面の半分、 木星が小さな点、 海王星は遠すぎて見えなくなるため、 観察しやすく log-scale で再配置しています。 実天体データは情報パネルに別途表示。
バグではなく、 そのとおりです。 金星は太陽系で唯一 「自転が公転と逆方向」 の惑星 (自転周期 -243 日)。 天王星は 「自転軸が公転面に対してほぼ横倒し」 で、 こちらも自転値は負 (-0.718 日)。 v1 では軸の傾きまでは表現していませんが、 自転速度の符号で 「逆方向」 を反映しています。
厳密ではありません。 内部的に 1× = 「1 秒で 1 日進む」 を基準にしています (実時間 1 秒 = 1 秒だと地球の公転 365 秒 = 6 分 5 秒。 体験として遅すぎる)。 そのため 1× でも 「1 秒に地球が 1 日進む = 約 1 度 公転」 がベース速度。 100× で 「1 秒に 100 日」、 100,000× で 「1 秒に約 274 年」 の感覚です。
v1 では 地球の月 のみ表示しています。 木星 (95+ 個) や 土星 (146+ 個) の衛星まで全部出すとシーンが混雑するため、 主要衛星のみ後の IMPROVE で追加予定。 各惑星の衛星数は情報パネルで確認できます。
されません。 Three.js のシーン構築 / レンダリング / インタラクション は全てブラウザ内処理で、 何もサーバーに送りません。 描画する天体データは静的アセットとして同梱しています。 サインアップも不要。
ai-lab.org の データ可視化 thesis 2本目です (1本目は WikiOrbit = Wikipedia 探索)。 同じ Three.js を使う TypeForge (3D テキスト) とは題材 (天文 vs タイポグラフィ) が完全別。 占い系 (FateNum / ArcanaFlip) とは別 thesis ですが、 「宇宙感」 の visual で隣接的に楽しめます。