To nie jest pytanie skierowane na rozwój gry, a więcej na temat technologii, która za tym stoi. Wielu dziennikarzy zajmujących się grami i profesjonalnych graczy (zarówno w turniejach, jak i sektorze rozrywki domowej) często zastanawia się nad tym, że każda gra z perspektywy pierwszej lub trzeciej osoby powinna mieć sposób na zmianę pola widzenia i zgadzam się z nimi. Głównym powodem, o którym wspominają, jest to, że dość duża liczba graczy cierpi na bóle głowy i zmęczenie oczu związane z chorobą lokomocyjną, jeśli grają z nadmiernie ograniczonym polem widzenia.
Rozumiem, czy niezależny programista nie pozwala na to ze względu na ograniczenia budżetowe, ponieważ musi w tym celu dodać obsługę silnika. Jednak wielu programistów korzysta z głośnych silników innych firm, takich jak Frostbite, Unity, Unreal lub Cryengine, ale nie oferuje opcji zmiany pola widzenia.
Dlaczego nie powinienem pozwolić na zmianę pola widzenia, jeśli pozwala na to technologia?
Odpowiedzi:
4A Games, twórcy Metro: Last Light , otrzymywali wiele krytyki za brak suwaka FoV w swojej grze. Menedżer społeczności Maurice Tan bronił swojej decyzji na forach Steam w następujący sposób :
Głównym powodem braku suwaka FoV było to, że wybrali podejście bez zanurzenia, ponieważ wszystkie informacje ważne dla gracza były wyświetlane na elementach 3d w ich polu widzenia. Gdy GUI jest częścią sceny renderowania, zmiana FOV zmienia GUI.
Coś, o czym Tan nie wspomniał w powyższym poście, ale prawdopodobnie również było częścią ich decyzji, to że FOV jest ważny dla planowania poziomu. Metro: Last Light to gra zorientowana na horror, z dużą ilością przerażeń i innych chwil szoku. Istnieje wiele sytuacji, w których gracz jest rozpraszany przez coś interesującego, więc patrzy w jednym kierunku, a następnie zaskakuje go nagły atak z boku. Ten efekt szoku może działać tylko wtedy, gdy projektanci poziomów znają pole widzenia gracza, a więc wiedzą, co mogą, a czego nie widzą, patrząc od pewnego punktu do innego punktu.
Ten sam problem pojawia się również w inny sposób podczas reżyserowania przerywników filmowych. Jeśli masz przerywniki w pierwszej osobie, prawdopodobnie chcesz mieć pełną kontrolę nad kamerą, aby móc kontrolować to, co gracz może, a czego nie widzi. Ale jeśli nie znasz FOV, prawidłowe reżyserowanie zdjęć może być niemożliwe. Kiedy pole widzenia gracza jest wyższe niż się spodziewałeś, zobaczy obiekty, których jeszcze nie powinny widzieć. Gdy FOV jest niższy, gracz nie zobaczy rzeczy, które powinien zobaczyć podczas przerywnika filmowego.
źródło
Brak suwaka FOV w grze z powodów budżetowych lub technicznych nie jest argumentem. FOV jest tylko jednym parametrem w tworzeniu matrycy widok-rzut. Po uzyskaniu odpowiedniej macierzy wszystkie pozostałe obliczenia zostaną wykonane samodzielnie. Innymi słowy, zmiana FOV oznacza, że należy zmienić tylko jeden wiersz kodu (zwykle w klasie kamer) i należy dodać opcję do menu. Zmiana nie rozprzestrzenia się na inne systemy, tylko „widzą” macierz 4x4 i nie dbają o to, jakie jest znaczenie zawartych w niej wartości.
Tworzenie matrycy z polem widzenia w XNA
Istnieją jednak dobre powody, dla których nie ma zmiennego suwaka FOV. Ustawienie wyższego pola widzenia oznacza, że możesz zobaczyć więcej świata na ekranie, będzie to miało wpływ na wydajność. Innym powodem jest to, że w grze konkurencyjnej gracz z wyższym ustawieniem pola widzenia będzie miał przewagę, ponieważ ten gracz może zobaczyć więcej wokół niego. Wreszcie może to stanowić estetyczny wybór. Wąski FOV da graczowi inne wrażenie niż szeroki FOV. Zwłaszcza w strzelankach z wąskimi korytarzami wąskie pole widzenia może zwiększyć doświadczenie. Dobrym przykładem tego są gry Call of Duty, w których gdy celujesz w dół, pole widzenia zmniejsza się.
(Należy pamiętać, że osobiście nie uważam, aby którykolwiek z powyższych powodów mógł bardzo obniżyć FOV, chcę tylko zilustrować, że w żaden sposób nie jest to problem techniczny.
źródło
Not having a FOV slider in your game due to budget or technical reasons is a non argument
Chociaż zgadzam się ze wszystkim, co powiedziałeś, nie dotyczy to konsol, FOV może mieć duży wpływ na wydajność, szczególnie na starszych urządzeniach, takich jak PS3 / X360, FOV bezpośrednio wpływa na ubijanie frustum, a zatem ma znaczny wpływ na niektóre platformy.Not having a FOV slider in your game due to budget or technical reasons is a non argument
, to nie jest prawda. Gra mogła nie zostać zaprojektowana dla innego pola widzenia od samego początku i opierać się na systemach. To, że szkielet projektu od podstaw może obsługiwać zmianę wartości, nie oznacza, że może to być projekt o milionach linii.Jedna rzecz, o której nikt inny nie wspomniał, to testowanie.
Każdy aspekt kontroli, jaką dajesz graczowi, to kolejna zmienna, którą musisz przetestować. Aby uzyskać przybliżone pełne pokrycie, musisz efektywnie zagrać na każdym potencjalnym polu widzenia, na wypadek problemów graficznych tylko na jednym poziomie, w szczególnych okolicznościach, gdy jesteś w najszerszym zakresie lub w najwęższym, lub „gdy gra została zapisana w najwęższym i otwartym najszersza oszczędność ".
Ten dodatkowy koszt / opóźnienie może nie być wart dodatkowej wartości poszerzenia FoV. To, że silnik obsługuje, nie oznacza, że „po prostu będzie działać” (chociaż zwiększa to prawdopodobieństwo). I tylko dlatego, że obliczenia powinny się sprawdzić, nie oznacza to, że wrażenia użytkownika będą pozytywne.
źródło
Z punktu widzenia użytkownika głównym powodem jest to, że w trybie dla wielu graczy szerszy FOV daje niesprawiedliwą przewagę.
źródło
Jako programista zmiana pola widzenia jest niepewną decyzją, którą należy podjąć. Musiałaby to być również decyzja podjęta na początku gry, w wieloosobowym studiu ważne jest, aby minimalna liczba klatek na sekundę i FOV były ustalane wcześnie, aby animacje i eliminacja okluzji miały coś ściśle wymagającego. Oczywiście Culling okluzji może opierać się na wielu czynnikach, nie tylko na widoku z kamery.
Powiedziałbym, że głównym powodem, dla którego nigdy nie dopuściłem do zmiany pola widzenia w grze, jest to, że kiedy tak się dzieje, gra zasadniczo się zmienia, wiem też, że powoduje chorobę lokomocyjną. Będzie to również oznaczać, że kamera renderuje więcej, co oznacza ogromny hit wydajności, ponieważ gry są zasadniczo zoptymalizowane pod kątem ustawionego pola widzenia.
Zakładam jednak, że pozwalam ci na całkowitą kontrolę. Może istnieć zakres umożliwiający użytkownikowi zmianę stożka widoku z powiedzmy 70-110 lub coś takiego, ale nie wiem bez testowania tego osobiście.
źródło
Inni podali kilka dobrych powodów - Estetyka (przerywniki, pożądany wygląd i styl gry), Równoważenie dla wielu graczy, Spadek wydajności z Wieder FOV, ale chcę dodać kilka pomysłów do aspektu technicznego:
Zwłaszcza problemy techniczne są prawdopodobnie bardziej skomplikowane, niż wielu z was myśli, ponieważ wiele przetwarzania odbywa się na GraphicsBuffers, a bufory te mają zwykle stałą rozdzielczość - więc wiele szczegółów graficznych będzie zależało od tłumaczenia tych buforów na rzeczywistą geometrię . Na przykład wiele współczesnych algorytmów Cienia (oprócz cieni wolumetrycznych) wygląda coraz bardziej Blocky i Alias z wyższym FOV i tym samym buforem. To samo dotyczy każdego algorytmu, który wykonuje śledzenie promieni jak operacje, ponieważ pole widzenia jest szersze, pojedyncze promienie są rozproszone w szerszym łuku, a więcej szczegółów może zostać utraconych w przybliżeniach ...
źródło