Wpis z mikrobloga

#gamedev

TL;DR:


Obecnie w grach stosowanym modelem fizycznym jest uproszczona fizyka ciał twardych i miękkich, bo przez swoje uproszczenia jest zoptymalizowana pod zasoby urządzeń.
taka sama stosowana jest do gier kosmicznych na powierzchniach planet, to jest znośne, ale w skali makro jest stosowany wyłącznie model uproszczeń grawitacyjnych, co już moim zdaniem ujmuje realności grom.
przykład? fizyka kosmiczna gier ma gdzieś odległości i "limit prędkości światła", co sprowadza się do tego, że stan układów gwiezdnych widzimy bez zjawiska dylatacji czasu - obiekty dalekie powinniśmy widzieć znacznie młodsze, niż w naszym układzie odniesienia, ponieważ światło dochodzi do nas z latencją, jednak dla makro skali gier kosmicznych światło teleportuje się. omijam całkowicie temat zaginania samej czasoprzestrzeni w polu grawitacyjnym wielkich mas, to temat zbyt duży na uproszczenia.

dla gier kosmicznych potrzeba stworzyć nowy uproszczony model fizyczny uwzględniający dylatację czasu. ale jak? jednym rozwiązaniem jest prowadzenie historii zdarzeń, lecz to jest zbyt kosztowne w magazynowaniu, odpada. drugim rozwiązaniem jest zachowanie stanu początkowego oraz tylko zmian nie podążających za funkcją modelu ze stanem początkowym (czyli np. decyzje graczy/AI) - mamy zamknięty stan i każde ciało rozwija się w czasie zgodnie z funkcją modelu, a gdy gracz/AI dokona decyzji ze skutkiem niezgodnym z szacowanym postępem układu z aktualnym stanem początkowym, zapisujemy zmianę i układ rozwija się z nowym stanem początkowym funkcji. dzięki temu ciała oddalone od nas o coraz więcej lat świetlnych będą wizualizować nam ich coraz młodsze oblicze. to da się jeszcze załatwić - problemem staje się nasza obecność wokół masywnych ciał (bo czas naszego układu płynie wolniej, niż reszty a więc powinniśmy widzieć wydarzenia płynące szybciej, a więc do wizualizacji potrzebna jest predykcja postępu stanu ciał (nie jest to możliwe, gdy w świecie dokonywane są decyzje niepasujące do obecnego stanu funkcji, tj. gracze/AI) i tu jedyną opcją upraszczającą jest ignorowanie dalszych zmian.
praktycznie nie możemy cofać się w czasie, ale co, jeśli wejdziemy w zasięg masywnwgo ciała, spowolnimy nasz czas względem reszty i powrócimy do prędkości upływu czasu zgodnym z innym układem? tworzymy odgałęzienie czasoprzestrzeni ("nowy wszechświat") niezależne od decyzji graczy (AI nadal będzie działać) - gra wtedy musi uczyć się wzorców zachowań graczy i gracze zostają zamienieni w AI z ich wzorcem zachowań.
muszę zaprototypować ;_;

co myślicie o tym?
  • 3
@PsichiX:
Ad odległości i limitu prędkości światła
W grach strategicznych taka fizyka oczywiście nie ma racji bytu. Patrzymy z punktu widzenia obserwatora, który jest w stałej odległości od układów w grze. Weźmy za przykład Stellaris w widoku galaktyki. Jako gracz obserwujemy galaktykę z pewnej odległości, która jest stała dla wszystkich układów. Zoom można rozpatrzyć jako obiektyw, który swoim polem widzenia obejmuje całą galaktykę a zoom/przesunięcie odbywa się na wycinkach tego pola