Liczba wierzchołków
Badałem „Polygon Count” od ponad 15 lat. Nie ma ścisłego sposobu określenia, ile wynosi limit, szczególnie w przypadku nowocześniejszego oprogramowania i sprzętu. Limity były znacznie bardziej przydatne w silnikach, które obsługiwały jedynie 4000 trójkątów dla całego poziomu. Teraz przekonasz się, że większość obiektów w środowisku gry przekroczy to indywidualnie.
Ostatecznie liczy się to, co robi silnik z pasami wielokątów.
Gdy silnik renderuje każdy model, pobiera współrzędne odwzorowane na UV, teksturę / materiał przedstawiony na trójkątach i tworzy paski trójkąta. W większości przypadków wentylator trójkąta jest podzielony na osobne paski trójkąta na trójkąt. Zwiększa to liczbę pasków trójkąta, zmniejszając wydajność.
Doskonałym przykładem tego rozwiązania jest płaski cylinder cylindra. Pakiety 3D zazwyczaj tworzą trójkątny wentylator z wierzchołkiem pośrodku. Usuwam krawędzie i środkowy wierzchołek, a następnie tworzę kwadraty w poprzek twarzy. To powinno następnie triangulować w pojedynczy pasek trójkąta zamiast wielu pasków jednej twarzy, bez zmiany liczby wielokątów.
Liczbę wielokątów należy traktować jako wskazówkę i zadbać o sposób modelowania, a także UV Mapuj siatkę. Mniej podziałów w siatce, gdy mapowanie UV często może być bardziej korzystne.
Następnie zastanów się, co można sfałszować za pomocą normalnych map. Płaska twarz z dużą ilością szczegółów zwykle jest odwzorowana normalnie. Zaokrąglenia muszą być okrągłe, aby zobaczyć sylwetkę. Patrząc z przodu na zakrzywione twarze, nie powinieneś zauważać różnicy między zasobem wysokiej rozdzielczości a zasobem rozdzielczości gry. To sylwetka robi różnicę w twoim modelu, gdy w grę wchodzą normalne mapy. Sylwetkę można teraz modyfikować za pomocą DirectX 11, korzystając z mozaikowania i mapowania przemieszczeń.
Design gry
Podczas projektowania gry weź pod uwagę następujące kwestie:
- Zdefiniuj typ gry (np. Akcja / przygoda / wyścigi / scroller)
- Zdefiniuj typ widoku (np. Pierwsza osoba / trzecia osoba / ortografia)
- Zdefiniuj moc obliczeniową dla swojego rynku. (np. entuzjasta / zwykły gracz)
- Stwórz styl wizualny, który chcesz osiągnąć. Czy chcesz, aby wyglądało to na przykład Crysis 2, Borderlands, Bloodforge lub Gears of War?
- Zdefiniuj ważne przedmioty dla gracza. Czy twoje rekwizyty będą w centrum uwagi, czy tylko w tle?
- Czy siatki wizualne są również siatką kolizyjną?
Korzystając z gry i typów widoków, zdecyduj, jaka będzie głębia widoku. Czy widzisz odległe obiekty iz jaką jasnością? Czy robisz coś z ograniczonym widokiem, na przykład strzelanka na korytarzu? (np. Gears of War) Czy robisz coś w swobodnym roamingu z otwartymi krajobrazami? (np. Skyrim)
Gdy już wiesz, jak to powinno wyglądać, możesz zbadać podobne gry.
Animacja ograniczy wtedy twoją zdolność do zwiększenia liczby wielokątów. Siatki statyczne, wszystko, co pozostaje w tej samej pozycji, jest najtańsze na GPU i CPU. Zwłaszcza jeśli nie są obiektami fizyki. W przypadku obiektów fizyki często można tworzyć proste kadłuby zderzeniowe i złożone siatki wizualne. W większości gier nie ma wystarczającej interakcji, aby zauważyć różnicę. Animacja przesuwa twój model 3-wymiarowo, z kilkoma kośćmi na wierzchołek, mieszając się między ważeniem każdego z nich. Może to być kosztowne w stosunku do czasu procesora, co może kolidować z AI i fizyką opartą na oprogramowaniu. Im większa liczba wierzchołków, na które wpływa liczba kości w całym modelu, obniży wydajność procesora. Jest to kolejny powód, dla którego postacie w grze są uważane za „sztukę”. Bardzo trudno jest zdefiniować granicę wielokąta.
Mój przykład
Korzystam z UDK, tworząc powolną strzelankę z perspektywy trzeciej osoby, z ograniczoną liczbą graczy i postaci niezależnych na ekranie w dowolnym momencie. W tym celu zamierzam uzyskać około 10 000 trójkątów na gracza, 5000 trójkątów dla typowych, ogólnych wrogów, a gdybym tworzył postać w stylu „bossa”, około 15 000. Dodatkowo, broń dla trzeciej osoby, około 4000 trójkątów, będzie bardzo szczegółowa. Pojazdy około 10 000 trójkątów. Wszystko będzie wymagało poziomu szczegółowości, ponieważ wymagam długich odległości widzenia.
Gdybym robił pierwszą osobę, oparłbym ramiona na około 2000 trójkątów, broń na około 5000 trójkątów, z normalnym odwzorowaniem dla każdego.
Wniosek
Oto, co prawdopodobnie oznacza „To zależy”, ale pomyślałem, że może wyjaśnić pewne rzeczy, o których ludzie często się zastanawiają.
- Użyj liczby wielokątów jako przewodnika.
- Spójrz na obszary, które mogą być normalnie zmapowane zamiast modelowane.
- Zachowaj ostrożność, umieszczając wentylatory trójkątne, jeśli to możliwe, utwórz pasek.
- Używaj mniej podziałów na siatce podczas mapowania UV, pamiętając o paskach.