Rozważam przyjęcie szkieletowego formatu animacji ( zgodnie z monitami tutaj ) do gry RTS. Indywidualna reprezentacja każdego modelu na ekranie będzie niewielka, ale będzie ich wiele!
W animacji szkieletowej, np. Plikach MD5, każdy pojedynczy wierzchołek może być dołączony do dowolnej liczby połączeń.
Jak możesz skutecznie to wspierać podczas interpolacji w GLSL? A może silniki wykonują animację na procesorze?
Czy też silniki ustalają dowolne limity maksymalnych połączeń na wierzchołek i wywołują mnożniki nop dla tych połączeń, które nie używają maksymalnej liczby?
Czy są gry wykorzystujące animację szkieletową w otoczeniu przypominającym RTS, co dowodzi, że na zintegrowanych kartach graficznych nie mam się czym martwić, idąc drogą kości?
Odpowiedzi:
Tak, ograniczenie liczby wpływów na kości jest powszechne. Możesz albo nieużywać wpływów o wadze 0, albo mieć mechanizm pętli / wczesnego wychodzenia, aby pominąć.
Jeśli chodzi o to, czy działa dla RTS, nie mam dla ciebie referencji, ale wyobrażam sobie, że będziesz potrzebować LOD, jeśli pracujesz z dużą liczbą znaków na ekranie, a także, jeśli te postacie są małe.
LODowanie postaci szkieletowych jest bardzo podobne do LODowania czegokolwiek innego, z tym wyjątkiem, że prawdopodobnie będziesz chciał LODować wpływy kości i szkieletu oraz siatki.
Na przykład niski poziom szczegółowości może wykorzystywać tylko jedną kość o największym wpływie na wierzchołek (znany również jako „twarde skórowanie”).
Prawdopodobnie ograniczyłbyś również liczbę kości w szkielecie dla modelu o niskim LOD.
Wreszcie - zastanów się, czy kiedykolwiek będziesz musiał renderować postacie z bliska. Prawdopodobnie chcesz tylko modelować, skórować i animować postacie dla najbliższej odległości widzenia ... z pewnością nie chcesz przechowywać wszystkich danych środowiska wykonawczego w rozdzielczości znacznie wyższej niż kiedykolwiek renderujesz. Może się okazać, że po prostu nie potrzebujesz tylko bardzo podstawowego szkieletu i kilku wpływów na wierzchołek w twojej sytuacji.
źródło
Nie sądzę, że animacja szkieletowa jest dobra dla gry RTS, animacja szkieletowa będzie wymagała dodatkowego procesu dla wszystkich postaci, podczas gdy animacja klatki kluczowej zużywa więcej pamięci, ale użyjesz tego samego dla wielu postaci, również gra rts wymaga małych animacji na postać
źródło