Процедурний генератор зіркового поля


15

Хтось знає про будь-який код для процедурного генерування зіркових полів?

В ідеалі я хотів би, щоб це базувалося на фізиці, щоб я мав реалістичні планети та місяці. Найкраще було б у C ++, відкритому коді та працювати з Ogre3d.

Я не боюся кодувати щось із університетської праці, якщо немає нічого.


2
Що ви маєте на увазі під «полем»? Скупчення зірок, галактика, скупчення галактик? Тільки зірка з деякими планетами?
Майк Семдер

2
Я хотів би створити небо для гри. Я хотів би, щоб нічне небо поводилося трохи реалістичніше. Оскільки зірки не змінюються, ви можете генерувати для них статичний знімок із зіркового каталогу (або просто випадковим чином). Планети рухаються повільно, щоб періодично ви могли процедурно оновлювати свої позиції. Місяць сильно зміниться, тому ви частіше процедурно генеруєте його. Місяць також потребує певної обробки зображень, оскільки він буде набагато більшим, ніж просто піксель.
Джей

1
Має хороший матеріал: vterrain.org/Atmosphere
Jay

2
Багато чого, що вам потрібно, буде ґрунтуватися на ваших швидкостях подорожі, ви суб-с або надсвітні, це чистий небосхил чи летите через цілі галактики? Який у вас масштаб?
Патрік Х'юз

1
Мені не потрібно імітувати релятивістські ефекти. Ніщо так швидко не рухатиметься. OsgEphemeris для тренажерів польоту виглядає як чудова відправна точка
Джей

Відповіді:


11

Я вважаю, що виробляти зоряне поле (дальність дії) та планети та місяці ("короткий діапазон") має бути два різних шари. Щодо зіркового поля, я вважаю, що це корисно для моєї гри : http://alexcpeterson.com/spacescape . Це може піклуватися про ваш далекобійне, статичне зіркове поле. Він написаний на C ++ та з відкритим кодом.

Що стосується матеріалів "короткого діапазону". Я знайшов джерела для симуляторів сонячної системи, але, з мого неглибокого погляду, вони виглядають не дуже загальними, якщо ви хочете створити іншу сонячну систему, ніж нашу. Я поклав посилання в кінці.

Насправді це не повинно бути надто складним завданням створити загальну систему для планет. Навчіться своєму Kepler, і ви зможете отримати хороші оцінки положень планети. http://en.wikipedia.org/wiki/Kepler%27s_laws_of_planetary_motion . Напевно, просто дотримуйтесь простих неексцентричних орбіт для початку :)

Ось декілька посилань на симулятори сонячної системи, які я знайшов.

http://astro.berkeley.edu/~dperley/programs/ssms.html

http://code.google.com/p/solar-system-cpp/


Ваш інструмент виглядає дуже корисно. Дякуємо за обмін
Jay

3
Це не мій інструмент, я просто використовую його :) Вся заслуга інструменту Spacescape належить Алексу С Петерсону
MichaelHouse
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.