[English](README.md) | [简体中文](README.zh-CN.md) | **日本語** | [한국어](README.ko.md) # Galaxy Explorer 🌌 デモページ https://zjoooooo.github.io/galaxy-explorer/ Image_2026-07-04_141404_478 完全な 3D の**太陽系**、さまよう**彗星**、そして本物の**電波銀河ジェット**を備えた、インタラクティブなプロシージャル生成の**天の川銀河**。WebGL(three.js)だけでブラウザ上で完結します。バックエンドもビルド工程も、依存パッケージのインストールも API キーも不要 — ページを開くだけで探索できます。 銀河そのものは、読み込み時にコードで生成されます。**画像アセットは一切ありません** — 渦状腕も星雲ガスも星団も、遠方銀河も超新星も、すべて数式です。太陽系ではその上に、惑星・衛星・太陽向けの実際の NASA ベースの表面テクスチャを重ねています。 [PolyForm 非商用ライセンス 1.0.0](LICENSE)のもと、個人・学術・教育など**あらゆる非商用目的で自由に利用できます**。商用利用には別途ライセンスが必要です([Issue](https://github.com/zjoooooo/galaxy-explorer/issues) からご相談ください)。 ## ✨ 特徴 - **渦状円盤** — 4 本の密度波の腕に散りばめられた約 85,000 個のダストポイント。暖色のコアから冷たい青の腕へと色が移ろい、明るい星のノット、HII 領域、青い星団を伴います。 - **ボリューメトリックに見える星雲** — 連続的な fBm + Worley ノイズのシェーダーフィールド(ドメインワープした渦巻き、ダストレーン、輝くコア)が腕をガスで包み込みます。 - **銀河バルジ** — ゆっくりと「呼吸」する、なめらかなマルチスケールのグローコア。 - **ディープフィールドの星空** — またたく星野に加えて、約 170 個の小さな遠方銀河(楕円銀河、渦巻銀河、エッジオンの円盤銀河、不規則銀河)、豊かな銀河団、そしてアンドロメダ風の大きな隣人がひとつ — これらすべてをわずか 2 回のドローコールで描画します。 - **物理モデルに基づくアンビエントイベント** — ときおり流れ星や流星群、超新星が発生します。超新星は実際の光度曲線(t².³ で立ち上がり → 丸みを帯びたピーク → 2 段階の減光)に従い、4 本の回折スパイクの閃光を放ちます。 - **インタラクティブなビーコン** — クリック可能な約 30 個のマーカー(太陽系、いて座 A*、有名な星雲、星団、恒星、ブラックホール)。クリックすると詳細な 5 言語対応の情報カードが開き、選択した天体には光る 3D リングが表示されます。系外銀河に近づくと、その銀河固有の**銀河内天体**が現れます — 星形成領域、球状星団、超新星残骸、電波ジェットが、それぞれ専用のカードとともに登場します。 - **電波銀河ジェット** — **ケンタウルス座 A** は、生きた流れのように流動し、波打ち、脈打つ 2 本の針のように細いプラズマビーム(北は青、南は紫)を放ち、それぞれの先端は渦巻く巨大な**電波ローブ**で終わります — 電波望遠鏡がとらえる姿そのものです。**M87** は、反対側のジェットがドップラー効果で暗くなって見えなくなるため、有名な*片側だけ*のジェットを保っています。 - **太陽系ガイド** — **太陽系**ビーコンをたどり、6 秒の**ワームホール**をくぐって完全な 3D の太陽系へ。太陽、八つの惑星すべて、月、ケレス、冥王星、さらに有名な 7 つの衛星が、実際の NASA ベースの映像(主要な天体は 4K)をまとい、太陽に置かれた 1 つの太陽光源だけで照らされています。どの天体もクリックするとイラスト付きの 5 言語対応カードが開き、**この天体へ飛ぶ**を押すと、公転中の惑星の上空へ舞い込み、衛星が現れる中を惑星と*並んで進み*ます。**生きた太陽**は、漂う粒状斑、移動する黒点、噴き出しては拡散するプロミネンスを見せます。カークウッドの空隙を備えた実スケールの**小惑星帯**、**カイパーベルト**、巨大惑星のかすかなリング、そして半透明の**大気の縁の輝き**が情景を完成させます。2 つの**彗星**が離心率の高い軌道をめぐり、太陽の近くで古典的な二本の尾 — まっすぐな青い**イオンの尾**と湾曲した白い**ダストの尾** — を広げます。どちらかをクリックすればその仕組みを読めますし、**追いかける**こともできます。公転と自転は観察しやすいよう意図的にゆっくりにしています。表示縮尺と初期位置は読みやすさのためのもので、実寸の縮尺模型やリアルタイムの天体暦ではありません。 - **星座の空ビュー** — 地球のカードから、大気の白い閃光を抜けて、地球中心で回転できる星空ドームへ。実在の J2000 の恒星位置から描かれた **25 星座**(黄道 12 星座に加えて有名な 13 星座)と、それぞれ本来の母星座の中に配置された **7 つの系外銀河**があり、いずれも専用の 5 言語対応の写真カードを備えています。 - **5 言語対応** — ラベル、カード、ナビゲーションは英語・簡体字中国語・繁体字中国語・日本語・韓国語に切り替えられます(右上のセレクターで選択。設定は記憶されます)。 - **シネマティックな画づくり** — 選択的な bloom + ACES トーンマッピング。 - **パフォーマンスへの配慮** — FPS ウォッチドッグが非力な GPU ではダスト密度を自動的に下げるため、ノート PC やテレビ、キオスク端末でも滑らかに動作します。 ## 🎯 活用シーン - **学習・教育** — WebGL、three.js、GLSL シェーダー、プロシージャル生成、パーティクルシステム、ノイズ(fBm/Worley)を学べる、コンパクトで読みやすい単一ファイルの実例です。天文学、コンピューターグラフィックス、クリエイティブコーディングの授業に最適。各サブシステムは自己完結しており、コメントも付いています。 - **背景・スクリーンセーバー** — ランディングページのヒーロー背景、デスクトップやセカンドモニターの背景、アイドル画面に映えるアンビエントな銀河。 - **デジタルサイネージ・インスタレーション** — ロビーのスクリーン、博物館やプラネタリウムの展示、イベントの背景など。フルスクリーンで動作します(`F` キーでシネマモード)。 - **開発の出発点として** — フォークして、独自の宇宙ビジュアライゼーション、銀河をキャンバスにしたデータビジュアライゼーション、ゲームの背景、アート作品を作ってください。 ## 🚀 インストールと実行 **インストールは不要です。** ファイルを取得して HTTP で配信するだけです(`file://` プロトコルでは、オーディオやテクスチャなど一部の機能がブラウザによってブロックされます)。 ```sh # 1. get the code git clone https://github.com/zjoooooo/galaxy-explorer.git cd galaxy-explorer # 2. serve it with any static server, e.g.: python -m http.server 8000 # or: npx serve . # or: php -S localhost:8000 # 3. open http://localhost:8000/ ``` **静的ホスティングならどこにでもデプロイ可能:** GitHub Pages、Netlify、Vercel、Cloudflare Pages、S3、nginx、その他任意の Web ホスト。フォルダーをアップロードするだけで、ビルドするものは何もありません。 ## 🎮 操作方法 | 操作 | 効果 | |---|---| | **ドラッグ** | カメラを周回させる | | **スクロール / ピンチ** | ズームイン / ズームアウト | | **ビーコン・天体・彗星をクリック** | カードを開く。天体を選んでもカメラと運動は変わらない | | **この天体へ飛ぶ / この彗星を追いかける** | (カード上)動いている対象の上空へ舞い込み、並んで進む | | **戻る** | 星空 → 地球 → 太陽系の全景 → 銀河の順に 1 段階戻る | | **`Esc`** | 段階的に戻る:カードを閉じ、現在の太陽系レベルを離れ、最後に太陽系を離れる | | **`F`** | シネマモード — すべての UI を非表示 | | **`M`** | BGM のオン / ミュート(任意。下記参照) | **URL パラメーター** - `?fx=1` — デモモード: 流れ星・流星群・超新星を 4 秒ごとに強制的に発生させ、アンビエントエフェクトをすぐに確認できます。 - `?tune=1` — 星雲グローシェーダーのライブスライダーを表示。見た目をリアルタイムに調整し、気に入った値を tunables にコピーできます。 ## 🎛️ カスタマイズ `index.html` を開き、`