Хабрахабр

Мир трехмерной гиперсферы. Геодезическая трассировка лучей в замкнутой вселенной со сферической геометрией

Хотели посмотреть на мир глазами существа живущего в компактной замкнутой вселенной со сферической геометрией? Посмотреть на мир без ночи? Мир, где на небе виден другой полюс планеты? Мир, где нет разницы между солнечным и лунным затмением? Добро пожаловать под кат!

Введение. Двухмерный замкнутый мир

Для того чтобы лучше понять то, что будет происходить дальше вообразим, что вы двухмерное существо и живете в двухмерном мире представляющем собой сферу. Как вы будете воспринимать ваш мир? Начнем с определения положения тел. Вы можете объявить точку, в которой находитесь, «центром вселенной», выбрать два взаимно перпендикулярных единичных вектора и пользоваться полученной декартовой системой координат в окрестностях «центра вселенной».

То, что воспринималось вами как перпендикулярные прямые, при определенном удалении от «центра вселенной» превращается в то, что воспринимается вами как параллельные прямые… Однако, по мере удаления от «центра вселенной» начнут происходить странные вещи.

… А параллельные прямые пересекаются.

Поэтому декартова система координат непригодна для определения положения тел в вашем мире — при удалении от «центра вселенной» она теряет смысл. Причина проста — то, что воспринимается вами как прямая, на самом деле является большой окружностью — геодезической линией сферы.

Эта система координат естественна и непротиворечива. Вам придется выбрать другую, более подходящую для использования в вашем мире, систему координат — полярную. Действительно — угол между полярной осью и направлением на тело остается постоянным вне зависимости от расстояния до тела.

Умея определять положение тел, мы можем мысленно исследовать ваш мир и описать некоторые эффекты, проявляющиеся по мере удаления от «центра вселенной» и обусловленные тем, что ваш мир представляет собой сферу.

Однако, на расстоянии больше чем четверть длины геодезической линии от «центра вселенной» при удалении тела его угловой размер будет увеличиваться. Обратная перспектива. Обычно при удалении тела от «центра вселенной» его угловой размер уменьшается. Тело, удаленное на одно и то же расстояние от экватора будет иметь один и тот же угловой размер вне зависимости от того по какую сторону от экватора оно лежит. Этот эффект связан с тем что расстояние между геодезическими линиями сферы до экватора увеличивается, а после экватора уменьшается. И этот угловой размер будет больше чем угловой размер тела на экваторе.

Если тело находится вблизи точки противоположной «центру вселенной», то куда бы вы ни посмотрели, вы встретитесь взглядом с этим телом. Растягивание тела на все небо. Здесь термин все небо используется в значении — все поле зрения двухмерного существа (верхнее и нижнее или переднее и заднее). Это предельный случай эффекта обратной перспективы. У тела не будет точки, которую невозможно было бы увидеть — каждой точке найдется место на небе.

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

На расстояниях от половины до трех четвертей длины геодезической линии от «центра вселенной» при удалении тела его угловой размер снова будет уменьшаться (прямая перспектива). Вторая прямая и обратная перспективы. Этот эффект так же наблюдается если тело находится на расстоянии больше чем половина длины геодезической линии от «центра вселенной». Этот эффект, как и эффект обратной перспективы, связан с изменением расстояния между геодезическими линиями сферы — на обратном пути к «центру вселенной» расстояние между геодезическими линиями сферы до экватора увеличивается, а после экватора уменьшается. На расстояниях от трех четвертей до целой длины геодезической линии от «центра вселенной» при удалении тела его угловой размер снова будет увеличиваться (обратная перспектива).

Луч, выпущенный по длинному пути, обходит ваш мир и попадает в обратную сторону тела. Двойники. У каждого тела в вашем мире будет двойник — если вы видите перед собой тело, то обернувшись вы сможете увидеть его обратную сторону (двойник). Следует отметить, что поверхностью двойника будет та часть поверхности, которую вы не видите перед собой, и она будет симметрично преобразованной.

На рисунках: окрестность точки противоположной «центру вселенной». Прохождение тела через точку противоположную «центру вселенной». Поскольку эффект растягивания тела на все небо является весьма необычным мы рассмотрим его подробнее.

Видно, что:

  • вначале расположенная перед вами поверхность тела увеличивается (окрашена синим цветом), а расположенная позади вас — уменьшается (окрашена голубым цветом); при этом обе поверхности имеют одинаковые угловые размеры — то есть расположенная перед вами поверхность тела стягивается (все большая часть поверхности лежит в пределах каждого градуса), а расположенная позади вас — растягивается (все меньшая часть поверхности лежит в пределах каждого градуса)
  • когда тело касается точки противоположной «центру вселенной» угловой размер обоих поверхностей равен 180 градусам — одну половину неба (перед вами) занимает вся поверхность тела, а вторую половину неба (позади вас) занимает точка, лежащая на обратной стороне тела
  • пока центр тела совмещается с точкой противоположной «центру вселенной» происходит процесс обратный стягиванию и растягиванию
  • когда тело расположено в точке противоположной «центру вселенной» его поверхность в неискаженном виде растянута на все небо
  • сползание тела с точки противоположной «центру вселенной» выглядит аналогично

Двойной горизонт. Представим, что вы живете на двухмерной планете. Опустив взгляд вниз, вы видите поверхность вашей стороны планеты, а подняв взгляд вверх, вы видите… поверхность обратной стороны планеты. Причем она будет очень сильно стянута — видна и поверхность обратной стороны планеты и та часть поверхности вашей стороны планеты, которая находится за вашей спиной за горизонтом — вы можете увидеть все это у себя над головой. Небо будет представлено в виде узкой как ниточка полоски зажатой сверху и снизу горизонтами вашей и обратной сторон планеты. Это комбинация эффекта растягивания тела на все небо и эффекта двойника. Вообще, в вашем мире, если вашему взгляду ничего не мешает, то прямо перед собой можно увидеть свой затылок… здоровый такой затылок, во всех подробностях… растянутый на все небо)

Свет, испущенный звездой по короткому пути, падает на дневную сторону планеты. Мир без ночи. Представим, что двухмерная планета на которой вы живете вращается вокруг двухмерной звезды. Ночи больше не существует. В то же время, свет, испущенный звездой по длинному пути, обходит ваш мир и падает на ночную сторону планеты. Конечно, можно выделить истинные закат и рассвет по длине пути, который прошел свет, но отличить их от двойников будет практически невозможно. Все что осталось — это закаты и рассветы, которые будут происходить одновременно — когда перед вами обращенная к вам сторона звезды начнет заходить за горизонт, позади вас из-за горизонта начнет восходить обратная сторона звезды.

Если планете не повезло и она находится в точке противоположной звезде, то звезда будет растянута на все небо, но любоваться этим будет проблематично, так как на планету обрушится весь свет испущенный звездой (при отсутствии поглощения и рассеяния света межпланетной средой). Есть и предельный случай.

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

Трехмерный замкнутый мир

Выше мы рассмотрели удивительный мир двухмерного существа. А как насчет нас, трехмерных существ? Какова геометрия Вселенной? К сожалению, наука пока не может дать ответ на этот вопрос. В основном мешают свойства и размер Вселенной. Попробуем помочь науке. Выберем в качестве кандидата наиболее интересную замкнутую вселенную со сферической геометрией и визуально исследуем ее. Будут ли наблюдаться эффекты открытые нами для двухмерного аналога? Может быть, мы узнаем что-то новое? Что-то, чего не ожидали узнать? Или даже увидим то, что видим каждый день, но не обращаем на это внимание? Как вообще будет выглядеть такая вселенная?

Модель

Мы будем исследовать мир, который представляет собой трехмерную гиперсферу (3-сферу) — то есть сферу, лежащую в четырёхмерном пространстве. Выберем один тип объектов для визуализации — сферу (2-сферу принадлежащую 3-сфере).

Основные понятия и соотношения

Освещение

Мы будем использовать две модели освещения.

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

Мы будем использовать ее при построении реалистических изображений. Реалистическая модель освещения. В этой модели будет выделенный точечный источник света. В замкнутой вселенной со сферической геометрией площадь волнового фронта прямо пропорциональна квадрату условного радиуса сферы с геодезическим радиусом равным расстоянию от точки поверхности до источника света. Эта модель может учитывать влияние площади волнового фронта на яркость точки поверхности (фактически — влияние расстояния до источника света). После прохождения точки противоположной «центру вселенной» происходит обратный процесс: лучи света вначале расходятся, а потом снова сходятся. При удалении от источника света площадь волнового фронта до экватора увеличивается (лучи света расходятся), а после экватора уменьшается (лучи света сходятся, фокусируются). Кроме того эта модель может учитывать особенности восприятия (закон Вебера — Фехнера).

Для построения изображения будем использовать обратную трассировку лучей. Что бы модель была интерактивной (мы будем осматривать наш мир и перемещаться в нем) изображение должно строиться в режиме реального времени. Поэтому вычисления будем выполнять во фрагментном шейдере (используем WebGL). Интерфейс реализуем на JavaScript.

Первое знакомство

Создадим трехмерный замкнутый мир с длиной геодезической линии равной 100 — так нам будет проще ориентироваться — экватор нашего мира будет расположен от наблюдателя на расстоянии 25 (четверть длины геодезической линии), а противоположный полюс нашего мира — на расстоянии 50 (половина длины геодезической линии). Поместим в наш мир планету и окрасим части ее поверхности в цвета зависящие от того в какой октант они попадают:
В качестве основной текстуры будем использовать текстуру шахматная доска 3x6, то есть каждая параллель и меридиан будут проходить ровно через 12 ячеек. В качестве альтернативной текстуры будем использовать текстуру земной шар. Ниже показаны снимки ознакомительного облета нашей планеты.

При наложении альтернативной текстуры можно увидеть: Снимок Северного полюса. Ось X направлена вправо, ось Y направлена вверх, ось Z направлена на нас.

  • справа — Тихий океан
  • сверху — Северную Америку
  • слева — Атлантический океан
  • снизу — Евразию

Снимки перелета от Северного полюса к экватору и от экватора к Южному полюсу.

При наложении альтернативной текстуры можно увидеть: Снимок Южного полюса. Ось X направлена вправо, ось Y направлена вниз, ось Z направлена от нас.

  • справа — Тихий океан, Новую Зеландию, Австралию
  • сверху — Индийский океан
  • справа — Атлантический океан, Африку
  • снизу — Южную Америку

Визуальное исследование

Проведем визуальное исследование нашего мира с целью обнаружить аналоги эффектов открытых нами в двухмерном замкнутом мире.

Стягивание поверхности двойника заметно из-за того что мы находимся достаточно близко к планете. Двойники. Как и в двухмерном аналоге у каждого тела в нашем мире будет двойник — если мы видим перед собой Северный полюс, то обернувшись мы сможем увидеть… Южный полюс.

Эксперимент, при котором наблюдатель удаляется от планеты (цифра в левом верхнем углу каждого снимка — это дистанция между наблюдателем и планетой).

Видно, что:

  • вначале угловой размер планеты уменьшается — это обычная прямая перспектива
  • потом, когда планета прошла экватор нашего мира (дистанция более 25), ее угловой размер увеличивается — это знакомый нам эффект обратной перспективы
  • при наползании на противоположный полюс нашего мира мы видим стянутую поверхность (дистанция 46,875)
  • когда планета находится на противоположном полюсе нашего мира (дистанция 50) ее растягивает на все небо
  • при сползании с противоположного полюса нашего мира мы видим растянутую поверхность (дистанция 53,125)
  • после того как планета прошла противоположный полюс нашего мира она выглядит симметрично преобразованной — красный октант поменялся с синим и так далее
  • затем, угловой размер планеты уменьшается (дистанция от 50 до 75), а потом увеличивается (дистанция от 75 до 100) — это знакомый нам эффект второй прямой и обратной перспективы

Артефакты. При использовании модели было замечено, что во время прохождения планеты через точки лежащие от наблюдателя на расстояниях 25, 50 и 75 возможно появление артефактов — на планете может «вырасти шерсть» или она может вообще «рассыпаться». Видимо моя математика чего-то не учитывает)

Поверхность планеты перед нами сильно стянута — видно не только все Северное полушарие, но и часть Южного полушария за экватором. Снимок планеты в окрестностях противоположного полюса нашего мира (использован широкоугольный «объектив»). Обе поверхности тянутся друг к другу пытаясь как бы заключить нас в сферическую оболочку и явить нам картину планеты растянутой на все небо. Поверхность планеты позади нас сильно растянута — крупно виден Южный полюс.

Эксперимент, при котором наблюдатель поднимает взгляд (цифра в левом верхнем углу каждого снимка — это угол между направлением вниз и направлением взгляда).

На снимках:

  • вначале появляется горизонт нашей стороны планеты
  • потом, мы видим над ним второй горизонт, где находим то, что расположено на нашей стороне планеты за нашей спиной за горизонтом
  • поднимая взгляд выше, мы видим обратную сторону планеты

Снимок двойного горизонта (использован широкоугольный «объектив»). Полоска неба достаточно велика потому что мы находимся на высоте порядка 50 км.

Снимок неба над головой (использован широкоугольный «объектив»).

Пропорции размеров Солнца, Земли, Луны и их орбит для наглядности не будут соблюдены.
На снимке: граница между дневной и ночной сторонами планеты проходящая через Атлантический океан. Мир без ночи.
Далее для простоты мы будем называть нашу планету Землей, ее естественный спутник — Луной, а звезду вокруг которой они обращаются — Солнцем. Примерно такую картину видят ребята сидящие на лунных базах в нашем мире) Одновременно видны убывающая и растущая Земля.

Видно перекрытие Солнца диском Земли освещенным лучами Солнца выпущенными по длинному пути. На анимации: движение границы между дневной и ночной сторонами Земли.

Видны границы между дневной и ночной сторонами Земли и Луны. Солнечные и лунные затмения.
На снимке: Луна выходит из тени Земли.

На анимации: солнечное и лунное затмения.

Видно, что:

  • вначале Земля отбрасывает тень на Луну, а Луна отбрасывает тень на Землю
  • потом Луна выходит из тени Земли, а тень Луны уходит с поверхности Земли
  • затем тень Луны возвращается на поверхность Земли и Луна снова заходит в тень Земли
  • граница между дневной и ночной сторонами Луны не видна при перекрытии Луны диском Земли потому что обращенная к нам сторона Луны все еще находится в тени Земли

На анимации: движение границ между дневной и ночной сторонами Земли и Луны совмещенное с солнечными и лунными затмениями. Примерно такую картину видят ребята обслуживающие обсерватории в точке Лагранжа L2 в нашем мире) Конечно, если пренебречь вращением Земли)

На снимке: рассвет на МКС.

Заключение

Для чего все это)? Просто очень хотелось посмотреть на мир глазами существа живущего в компактной замкнутой вселенной со сферической геометрией. Познать этот удивительный мир без символов Кристоффеля и тому подобных вещей оставаясь в рамках общего курса высшей математики. Результат перед вами. Кажется все получилось. Надеюсь, вам было интересно и хорошего дня!

Исходный код.

Рабочая модель (открывать на ПК, не для мобильных устройств).

Геодезическая трассировка лучей в искривлённом пространстве-времени. Для тех, кого заинтересовала тематика, есть великолепная статья, в которой рассказывается об удивительных явлениях, которые можно наблюдать в реальной Вселенной: Как нарисовать чёрную дыру.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть