Comments 6
Только сам астероид в последнем видео изображен сильно не в размер))) хотя космос настолько огромнен, что в любом случае правильный масштаб сложно вообразить
Расскажите пожалуйста про софт которым вы делаете симуляции, какие физические формулы используете, как устроен рендер, на чём написано. Спасибо!
Создаю я эти видео с помощью двух программ, которые сам написал.
Первая программа была написана ещё в конце нулевых на С++. В ней осуществляется численное интегрирование с помощью многошаговых методов Адамса дифференциальных уравнений движения небесных тел с учетом Ньютновских и Шварцшильдовских членов. Входные данные - элементы орбит планет, Солнца и исследуемых небесных тел на некоторую начальную дату. Выходные данные - координаты объектов на исследуемом интервале времени с некоторым шагом (файл с огромным массивом числовых данных). Иногда вношу небольшие изменения в эту программу под некоторые специфические анимации (например, когда делал видео про движение Солнечной системы относительно звёзд). В этой же программе ещё в те годы я сделал визуализацию на OpenGL, но она была примитивная. Её можно было увидеть в старых моих видео, которые я делал год назад и раньше.
Вторую программу я написал в течение апреля прошлого года. Она визуализирует полученный массив данных. Новую программу я написал на JavaScript. В ней при загрузке страницы подготавливаются все необходимые данные (буферы координат вершин, текстуры), которые передаются на видеокарту, компилируются шейдеры. Используется WebGL. Затем с частотой 60 кадров в секунду осуществляется перерисовка экрана и взаимодействие с пользователем (перемещение камеры). Никакие вспомогательные библиотеки (например, для рисования сфер) я не использую. Координату каждой вершины рассчитываю самостоятельно. За счет этого добиваюсь максимальной гибкости (например, здесь можно посмотреть, как мне удалось визуализировать комету Понса-Брукса). Очень много вычислений вынесено в шейдеры. Основная нагрузка приходится на мою старенькую видеокарту, которой в этом году исполняется 10 лет. Также в течение последнего года постоянно вношу доработки в эту программу визуализации. Допиливаю её под каждое очередное видео. Например, для последних двух видео пришлось сделать расчет траекторий не относительно какого-либо небесного тела, а относительно математической точки Лагранжа.
Обе эти программы не являются готовым программным продуктом. Конечный продукт - это мои сгенерированные видео. Кто-то считает их наглядным пособием. Кто-то признаётся, что под них можно даже медитировать.
Гектор: крупнейший троянский астероид Юпитера