Autor Wątek: Zarządzanie sceną  (Przeczytany 1263 razy)

Offline HiddenNick

  • Użytkownik

# Listopad 30, 2010, 15:20:26
Mam pytanie dotyczące zarządzania sceną.

W swojej grze chcę użyć jakiś silnik fizyki. Nie jest to problem, ale zastanawiam się nad jedną rzeczą... Silniki fizyczne używają struktur podziału przestrzeni(mam na myśli np. octtree) do przyśpieszenia obliczeń. Takiej struktury potrzebuje też system usuwania niewidocznych obiektów.

Czy warto używać struktury na której pracuje silnik fizyczny do wykrywania niewidocznych obiektów, czy utworzyć do tego celu odrębną strukturę? Nie mam tu na myśli logicznego pojęcia struktury, ale fizycznego. Inaczej: czy ma sens tworzenie dwóch takich samych, ale odrębnych struktur w pamięci do realizacji różnych zadań?

Odpowiedź plz uzasadnij :)

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Pomnico

  • Użytkownik
    • Magic-Ars

# Listopad 30, 2010, 15:38:57
Moim zdaniem to zależy czego oczekujesz od systemu usuwania niewidocznych obiektów. Jeśli potrzebujesz prostego drzewa do przycinania do viewporta, to pewnie wystarczy to z fizyki (jeśli masz do tego dostęp oczywiście). Jeśli chcesz robić przesłanianie obiektów, graf oparty na portalach, czy jakieś inne magie, to pewnie warto rozważyć własną strukturę, którą mógłbyś zaprojektować optymalnie dla swoich celów.

Offline HiddenNick

  • Użytkownik

# Listopad 30, 2010, 17:30:02
Wykrywanie niewidocznych obiektów będzie o wiele bardziej skomplikowane. Tyle, że tworzenie dwóch struktur, które trzymają mniej więcej to samo to marnowanie czasu.

Offline yarpen

  • Użytkownik

# Listopad 30, 2010, 17:57:46
Rzadko masz wybor, bo silnik fizyczny ma swoje struktury. Chyba, ze to Twoj wlasny twor, ale wtedy tez raczej sugerowalbym rozbicie na dwa systemy, ktore wiedza o sobie mozliwie malo, a najlepiej nic. Tzn. silnik fizyczny trzyma obiekty fizyczne i nie obchodzi go rendering.

Offline Pomnico

  • Użytkownik
    • Magic-Ars

# Grudzień 01, 2010, 08:56:31
W sumie to Yarpen ma rację, zastanów się, czy silnik fizyczny musi wiedzieć o każdej trawie, każdym drobnym detalu? Raczej nie. Silnik graficzny jak najbardziej. Do silnika fizycznego często stosuje się uproszczoną reprezentację obiektów, niektórych w ogóle się tam nie wrzuca, aby przyspieszyć obliczenia, a czasem dodaje się wirtualne obiekty (różnego rodzaju blokady), więc tak czy inaczej masz z grubsza dwa różne zestawy danych.

Offline HiddenNick

  • Użytkownik

# Grudzień 01, 2010, 11:18:16
Dzięki za odpowiedzi i ich uzasadnienia. Bardzo mi pomogliście! Pozdrawiam!