Generowanie struktury wszechświata

Struktura przestrzeni

Tworzenie wszechświata trzeba od czegoś zacząć. Dobrym początkiem będzie określenie jego kształtu.

Najwygodniejszym i chyba najbardziej oczywistym kształtem jest sześcian. Wówczas każda z trzech współrzędnych będzie liczbą z tego samego zakresu, a dodatkowo bardzo łatwo jest sprawić, aby wszechświat nie miał granic - wystarczy dodać warunek, że opuszczenie sześcianu z jednej strony jest równoznaczne z wejściem do sześcianu z drugiej strony. Przypomina to sytuację znaną z gry w węża, w której wąż opuszczający ekran z prawej strony wracał znowu z lewej - tylko w trzech wymiarach.

Mamy zatem sześcienną przestrzeń, w której każdy punkt może być opisany trzema liczbami: x,\; y,\; z\; \in (a,b). Pojawia się pytanie: jakiego typu danych użyć do reprezentowania współrzędnych punktu? Nie uda się na nie odpowiedzieć bez wcześniejszego sprawdzenia, z jak dużymi liczbami mamy do czynienia.
(więcej…)

Projekt Universe

Projekt, który tymczasowo nazywam po prostu "Universe" (lepsza nazwa by się przydała, ale nie jest priorytetem), ma na celu stworzenie interaktywnego wszechświata w realistycznej skali - tj., zawierającego miliardy galaktyk, złożonych z miliardów gwiazd, z których część ma planety, część tworzy układy wielokrotne itd., itp.

Inspiracja pochodzi z kilku źródeł:

  • Space Engine - program pozwalający na zwiedzanie realistycznego Wszechświata
  • Minecraft - gra dająca niemal nieograniczone możliwości budowania i interakcji ze światem
  • Wurm Online - gra w pewnych aspektach podobna do Minecrafta, dająca również ogromne możliwości kształtowania świata

W skrócie - celem byłoby osiągnięcie możliwości interakcji ze światem podobnych do tych z Minecrafta lub Wurma, lecz we wszechświecie o skali Space Engine.

Oczywiście, skala przedsięwzięcia jest ogromna, dlatego projekt będzie zapewne ciągnął się latami i jego ukończenie stoi pod znakiem zapytania. Zamierzam jednak małymi kroczkami popychać go do przodu, aż może kiedyś nabierze interesującego kształtu, a postępy prac opisywać tutaj, w kategorii "Projekt Universe".