Процедурные галактики
|
|
SpaceEngineer | Дата: Вторник, 06.03.2012, 15:37 | Сообщение # 1 |
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
| Я начал делать процедурные галактики. Имеется в виду не 3D модели галактики, а генерация миллиардов галактик в почти бесконечном пространстве. Процедурные 3D модели - это следующий этап, а пока все галактики используют стандартные модели.
Первый скриншот показывает процедурную галактику. Точки на фоне - это не звёзды, а галактики. Обратите внимание на имя (идентификатор) галактики. Оно имеет ту же форму, что имя процедурной звезды: (номер сектора вселенной)-(уровень нода вселенной)-(номер нода вселенной)-(номер галактики в ноде).
На втором скриншоте я выделил Млечный Путь, чтобы узнать расстояние до него - 11.48 гигапарсек
На третьем скриншоте - некая планета в этой процедурной галактике. Проблем с дёрганьем камеры при движении нет - новая система координат на 128-битных числах работает отлично. Обратите внимание на имя (идентификатор) планеты. Теперь номера будут вот такими монструозными: (номер сектора вселенной)-(уровень нода вселенной)-(номер нода вселенной)-(номер галактики в ноде)-(номер сектора галактики)-(уровень нода галактики)-(номер нода галактики)-(номер звезды в ноде). Хотя для галактик из каталога можно сохранить старую систему - у них нет понятия сектора или нода вселенной, а только номер по каталогу.
В этом первом тесте создаётся всего лишь небольшой кусочек Вселеной - кубик со стороной примерно 10 гигапарсек (32 млрд св. лет). Галактики распределены в нём однородно, но потом я сделаю симуляцию крупномасштабной структуры Вселенной - галактики будут группироваться в скопления, "нити" и "стены". Также сделаю отсечку галактик, находящихся дальше 13.7 млрд св. лет, и постепенное покраснение галактик при приближении к этому расстоянию (симуляция красного смещения). 13.7 млрд лет - это возраст Вселенной, так что свет от галактик, находящихся дальше 13.7 млрд св. лет, ещё не дошёл до точки наблюдения. И это верно для любой точки Вселенной. Сама Вселенная в зависимости от космологической модели - или бесконечная, или имеет форму четырёхмерной гиперсферы с длиной экватора 50-100 млрд св. лет, и равномерно заполнена галактиками. Я сделаю скорее всего замкнутую модель - бесконечность сложно представить на компьютере. Так что в следующей версии не получится "улететь из Вселенной", как на многочисленных видео на ютубе. Вы просто совершите "кругосветное путешествие" и вернётесь в исходную точку.
|
|
| |
Asanay | Дата: Вторник, 06.03.2012, 17:59 | Сообщение # 2 |
Космонавт
Группа: Команда SE
Российская Федерация
Сообщений: 78
Награды: 0
Статус: Offline
| классно супер классно!!!
Windows 7 Intel® Core™2 Duo 2.80GHz 2.79 Ghz 4,00 - DDR2 NVIDIA GeForce GT 740 - 1024Mb
|
|
| |
Eugen | Дата: Вторник, 06.03.2012, 19:42 | Сообщение # 3 |
Космонавт
Группа: Команда SE
Российская Федерация
Сообщений: 59
Награды: 0
Статус: Offline
| Выглядит просто замечательно!
Можно ли будет отключать процедурные галактики и оставить только те, что в каталоге, как со звёздами?
Quote Я сделаю скорее всего замкнутую модель - бесконечность сложно представить на компьютере. Вы просто совершите "кругосветное путешествие" и вернётесь в исходную точку. Жалко, что из-за маленького возраста Вселенной нельзя будет увидеть Землю "сзади".
Intel Core 2 Duo CPU E8400, 3.00 ГГц 2.00 Гб ОЗУ NVIDIA GeForce 9600 GT (512 Мб) Windows XP SP2
|
|
| |
Crab | Дата: Вторник, 06.03.2012, 19:51 | Сообщение # 4 |
Первооткрыватель
Группа: Модераторы
Российская Федерация
Сообщений: 444
Награды: 1
Статус: Offline
| Впечатляет))) Хотелось бы узнать как сильно влияет на производительность?))
Windows 8 x64 Intel Core2 Duo CPU E7500 2.93GHz. 4 GB RAM. Nvidia GeForce 550Ti 1024mb.
|
|
| |
Franc | Дата: Вторник, 06.03.2012, 21:35 | Сообщение # 5 |
Исследователь
Группа: Пользователи
Российская Федерация
Сообщений: 239
Награды: 1
Статус: Offline
| ПРОСТО СУПЕР!
|
|
| |
GV_FiQst | Дата: Вторник, 06.03.2012, 21:37 | Сообщение # 6 |
Строитель Миров
Группа: Команда SE
Украина
Сообщений: 1062
Награды: 3
Статус: Offline
| Quote (SpaceEngineer) новая система координат на 128-битных числах работает отлично.
поясните принцип роботы этой сис-мы координат пожайлуста. очень интересно.
Всьо круто, только огромное количество галактик делает ощущение того что мы все еще в галактике хотя мы за ее границей. кстати такое количество галактик не испортит звездное небо?
AMD Phenom II X2 555 3200 MHz; RAM 4GB 1333 Hz; ATI Radeon HD 5670 1024 Mb; ОС Win 7 tabulorasa edition 32 bit
|
|
| |
Asanay | Дата: Вторник, 06.03.2012, 22:47 | Сообщение # 7 |
Космонавт
Группа: Команда SE
Российская Федерация
Сообщений: 78
Награды: 0
Статус: Offline
| Quote (GV_FiQst) кстати такое количество галактик не испортит звездное небо?
Ну судя потому что у нас в реальном мире я думаю нет) да и на скриншотах всё вроде нормально..
Windows 7 Intel® Core™2 Duo 2.80GHz 2.79 Ghz 4,00 - DDR2 NVIDIA GeForce GT 740 - 1024Mb
|
|
| |
SpaceEngineer | Дата: Вторник, 06.03.2012, 23:10 | Сообщение # 8 |
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
| Quote (Eugen) Можно ли будет отключать процедурные галактики и оставить только те, что в каталоге, как со звёздами? Конечно.
Quote (Crab) Впечатляет))) Хотелось бы узнать как сильно влияет на производительность?)) Никак
Quote (GV_FiQst) поясните принцип роботы этой сис-мы координат пожайлуста. очень интересно. 64.64 fixed point числа, 1.0 = 1 пк, значит минимальное расстояние 1 пк / 2^64 = 1.6 мм, а максимальное 1 пк * 2^63 = 9.2e18 пк Потом сделаю единицу расстояния 100 а.е., потому что 9e18 парсек не нужно, а вот минимальную единицу расстояния лучше сделать микрон, иначе при маленькой скорости будут залипания.
Quote (GV_FiQst) Всьо круто, только огромное количество галактик делает ощущение того что мы все еще в галактике хотя мы за ее границей. кстати такое количество галактик не испортит звездное небо? Разве галактики портят вид земного неба? А ведь с Земли можно увидеть миллиарды галактик. На том скриншоте просто предельная величина галактик поднята.
|
|
| |
GV_FiQst | Дата: Вторник, 06.03.2012, 23:37 | Сообщение # 9 |
Строитель Миров
Группа: Команда SE
Украина
Сообщений: 1062
Награды: 3
Статус: Offline
| Quote (SpaceEngineer) 64.64 fixed point числа, 1.0 = 1 пк, значит минимальное расстояние 1 пк / 2^64 = 1.6 мм, а максимальное 1 пк * 2^63 = 9.2e18 пк Потом сделаю единицу расстояния 100 а.е., потому что 9e18 парсек не нужно, а вот минимальную единицу расстояния лучше сделать микрон, иначе при маленькой скорости будут залипания.
а как Вы задаете координаты планеты например?
AMD Phenom II X2 555 3200 MHz; RAM 4GB 1333 Hz; ATI Radeon HD 5670 1024 Mb; ОС Win 7 tabulorasa edition 32 bit
|
|
| |
SpaceEngineer | Дата: Среда, 07.03.2012, 00:56 | Сообщение # 10 |
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
| Quote (GV_FiQst) а как Вы задаете координаты планеты например? У планет нет заданных координат - всесто них орбита. Координаты есть у звёзд и галактик. Координаты звёзд дадаются обычными float числами относительно центра галактики, координаты галактики - float числами относительно условного центра Вселенной. А те fixed point числа используются для задания координат камеры и для высокоточного вычисления координат объектов относительно камеры. Координаты звезды или галактики переводятся в fixed point, вычитаются координаты камеры, и потом результат переводятся обратно в float, что нужно для рендера. Фокус в том, что такое преобразование избавляет от ошибок, вызванных низкой точностью float или даже double - координаты камеры и относительные координаты объектов получаются с точностью 1.6 мм везде во Вселенной.
|
|
| |
GV_FiQst | Дата: Среда, 07.03.2012, 02:28 | Сообщение # 11 |
Строитель Миров
Группа: Команда SE
Украина
Сообщений: 1062
Награды: 3
Статус: Offline
| Quote (SpaceEngineer) координаты камеры и относительные координаты объектов получаются с точностью 1.6 мм везде во Вселенной.
Ничего себе точность, но конечно 0,0000125417... м точнее написано чем 1,3е-5 м
AMD Phenom II X2 555 3200 MHz; RAM 4GB 1333 Hz; ATI Radeon HD 5670 1024 Mb; ОС Win 7 tabulorasa edition 32 bit
Сообщение отредактировал GV_FiQst - Среда, 07.03.2012, 03:44 |
|
| |
Trojan32 | Дата: Среда, 07.03.2012, 12:28 | Сообщение # 12 |
Космонавт
Группа: Пользователи
Российская Федерация
Сообщений: 49
Награды: 0
Статус: Offline
| Возникает вопрос. Может и не логичный. А будут вводиться новые возможности по ускорению времени. И галактики вроде бы тоже движутся. Чтобы за этим наблюдать. А если они будут двигаться, то могут сталкиваться как и в реале. И как это будет моделироваться ил выглядеть. И как этот режим супер ускорения скажется на стабильности работы программы при включении его рядом с планетой?)) сколько сразу вопросов.
|
|
| |
SpaceEngineer | Дата: Среда, 07.03.2012, 14:21 | Сообщение # 13 |
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
| Quote (Trojan32) И галактики вроде бы тоже движутся. Чтобы за этим наблюдать. А если они будут двигаться, то могут сталкиваться как и в реале. И как это будет моделироваться ил выглядеть. Это слишком круто. Пока в магазинах не продают квантовые компьютеры, поэтому столкновение галактик в реалтайме - это фантастика. Нет, в Universe Sandbox не настоящее столкновение галактик - там всего тысячи частиц, и притягиваются они только к центральным чёрным дырам. А представьте процедурную галактику с 300 миллиардами звёзд (которые не сгенерированы все одновременно - памяти не хватит), да ещё 100 силлиардов таких галактик.
|
|
| |
SpaceEngineer | Дата: Среда, 07.03.2012, 21:00 | Сообщение # 14 |
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
| Первая попытка создать крупномасштабную струкруру Вселенной. Справа можно заметить знакомую "бабочку" галактик каталога.
|
|
| |
Dizel777 | Дата: Среда, 07.03.2012, 21:10 | Сообщение # 15 |
Строитель Миров
Группа: Модераторы
Российская Федерация
Сообщений: 800
Награды: 4
Статус: Offline
| ого !! кул! Масщтабненько
Win 7 Ultimate 64-bit SP1 AMD Phenom II X4 945 Processor 4GB RAM, NVIDIA GeForce GTS 250
|
|
| |