Skip to content

Repository files navigation

Stellar Cartography

Открыть карту | English

Космический атлас в браузере с атмосферой навигационной консоли. Выберите цель на карте Млечного Пути, отправьтесь в перелёт и рассмотрите объект в 3D.

В каталоге Солнце, Сатурн, Проксима Центавра, Плеяды, туманности Ориона, Орёл и Крабовидная, а также Стрелец A*. У звёзд есть процедурная поверхность и корона, у Сатурна кольца со щелью Кассини, у туманностей объёмные облака. Шейдер чёрной дыры приближённо изгибает лучи и показывает аккреционный диск.

Маршрут открытия проводит через пять остановок. Можно исследовать объекты в любом порядке, искать их по русскому названию или каталогу Мессье, вращать модели и скрывать интерфейс. Посещения сохраняются в журнале этого браузера. Звук включается отдельно.

При запуске появляется короткая терминальная заставка с радаром. Она закрывается примерно через 3 секунды после начала загрузки, когда карта готова. Enter, Esc или кнопка пропуска убирают ожидание. При уменьшении движения заставка закрывается сразу после загрузки.

Туманности используют объёмный рендеринг газа и поглощение света пылью. На звёздах видны гранулы, пятна и анимированные петли плазмы. Кольца Сатурна отбрасывают тень на планету.

Масштаб и данные

Это художественная визуализация реальных объектов. Положения на обзорной карте, размеры моделей, цвета, движение и перелёты условные. Карта не предназначена для астрономических измерений, а модели не являются точной реконструкцией наблюдений.

В каждой карточке есть ссылка на NASA. Расстояния ориентировочные; точка отсчёта подписана отдельно. Например, для Сатурна указано среднее расстояние от Солнца, для туманностей - от Земли. Они не являются длиной перелёта между текущими остановками. Для Ориона и Плеяд использованы оценки из связанного каталога NASA: 1 500 и 445 световых лет.

Управление

Действие Управление
Выбрать цель Метка на карте или строка каталога
Вращать Перетащить мышью или одним пальцем
Приблизить Колесо, жест двумя пальцами или кнопки + / -
Начать / пропустить перелёт Кнопка или Enter вне поля ввода
Вернуться к карте / отменить перелёт Esc или «К карте»
Скрыть / вернуть интерфейс H, русская Р или кнопка в панели
Поиск /

На узком экране каталог расположен снизу, сведения доступны через «Об объекте». Системная настройка уменьшения движения отключает анимацию перелёта и движение объектов. Автовращение можно включить вручную. В скрытой вкладке рендер приостанавливается.

Запуск

Нужен современный браузер с WebGL 2 и локальный HTTP-сервер:

git clone https://github.com/vincere-mori/stellar-cartography.git
cd stellar-cartography
python -m http.server 7821 --bind 127.0.0.1

Откройте localhost:7821. Через file:// модули не загрузятся.

Three.js и шрифты находятся в репозитории. Для просмотра не нужны npm, внешние CDN или сборка. GitHub Pages публикует корень ветки main.

Разработка

Node.js 22 или новее нужен только для тестов и обновления библиотек:

npm ci
npm test
npm run check
npm run vendor

npm run vendor копирует закреплённые версии Three.js и шрифтов из node_modules. После обновления зависимостей нужно сохранить package-lock.json, vendor/ и assets/fonts/ вместе. CI проверяет тесты, синтаксис и совпадение локальных копий библиотек.

  • app.js - интерфейс, клавиатура, журнал и звук
  • src/catalog.js - объекты, справочные данные и источники
  • src/state.js - выбор цели, перелёты и маршрут
  • src/scene.js - камера, рендер и переходы
  • src/models.js - геометрия, частицы и шейдеры
  • test/ - проверки навигации, поиска, журнала и статических ресурсов

Настольный прототип на Python сохранён отдельно: pip install -r requirements.txt, затем python main.py. Он использует прежние шейдеры из shaders/ и не повторяет новый веб-интерфейс.

Лицензии сторонних библиотек и шрифтов лежат рядом с ними в vendor/ и assets/fonts/.

Releases

Packages

Contributors

Languages