Dlaczego nie powinienem pozwolić na zmianę pola widzenia, jeśli pozwala na to technologia?

28

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?

Nzall
źródło
6
Co dziwne, zmiana pola widzenia jest dla mnie głęboko nieprzyjemna; mimo że przywróciłem domyślną wartość, nigdy nie sądziłem, że znów będzie wyglądał dobrze
Richard Tingle,
5
Czy masz jakieś odniesienia do źródła dla tej „dość dużej liczby graczy”, a najlepiej więcej niż jednego?
Patrick Hughes,
2
Według theguardian.com/lifeandstyle/2011/dec/19 /... 10-50% ludzi na całym świecie cierpi na tę chorobę pod pewnym względem.
Nzall,
Całkowicie choruję powyżej 90.
Almo

Odpowiedzi:

39

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 utrzymania stałego pola widzenia jest to, że mamy elementy 3D, takie jak zegarek i amunicja do broni, które muszą pozostać widoczne.

Ponadto wszystkie przerywniki i filmy pierwszej osoby w grze oraz każda animacja z udziałem rąk Artema - animacje bezczynnej broni, przeładowania, wspinanie się po drabinie, ataki w zwarciu itp. - zostały stworzone przy założeniu tego samego, stałego pola widzenia.

Zmiana FOV przerwałaby wszystkie przerywniki filmowe i animacje - można by zobaczyć wnętrze ramion Artema, lub jakby unosiły się w powietrzu przed tobą. Albo gorzej.

Zastanawialiśmy się nad zaoferowaniem trzech wstępnych ustawień FOV, ale nadal wymagałoby to znacznej pracy, aby ponownie wykonać każdą animację, dostosować interfejs i interfejs użytkownika oraz inne pozornie małe, ale niezwykle czasochłonne zadania.

Nawet przy szerszym, ale wciąż stałym polu widzenia, ręce Artema byłyby zbyt dalekie. Wiemy - próbowaliśmy.

Wydajność gry jest również powiązana z FOV - ilość szczegółów geometrycznych, które umieszczamy w każdej scenie, została częściowo określona przez ten zestaw FOV, a ustawienie szerszego FOV miałoby wpływ na wydajność.

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.

Philipp
źródło
Należy pamiętać, że wydajność jest również dużym problemem. Metro Last Light (grałem w nią) cierpiało z powodu problemów z wydajnością nawet na PC (ale programiści zwykle nie mówią tego społeczności, ponieważ nie jest to właściwe).
concept3d
2
Często o tym wspominałem, nie kupuję tego. W grze takiej jak Metro: Last Light potrzebujesz zasięgu, w którym FOV jest „ważny”, ale wszystko między 75-110 powinno być OK. Jest to po prostu proste, spraw, aby wszystko ważne było widoczne <75, animacje i modele odpowiednio widoczne 75 << 110 i wszystko „ukryte”> 110. Ludzie mają różne ekrany i niemożność dostosowania się do tego jest absurdalna, szczególnie gdy ludzie poruszają się chory z powodu złej projekcji. Jest to funkcja dostępności, a minimalny wysiłek sprawia, że ​​jest to niewybaczalne. Myślę, że dla tego Dewelopera była to refleksja.
rioki
@ concept3d: Nie jest właściwe z bardzo dobrych powodów. Jeśli nie mogę uruchomić gry w 120 stopniach, to ... więc? Ktoś inny mógłby. Komputery nie są konsolami, argument „jeśli użyjesz tej opcji, trudniej byłoby uruchomić” nie jest prawidłowy.
Phoshi,
@ Phoshi właśnie to mówiłem. Ale może to być duży powód, dla którego naprawili FOV w Metro Last Light PC, nie tylko z powodów związanych z grą.
concept3d
12

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.

public static Matrix CreatePerspectiveFieldOfView (
         float fieldOfView,
         float aspectRatio,
         float nearPlaneDistance,
         float farPlaneDistance
)

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.

Roy T.
źródło
10
Not having a FOV slider in your game due to budget or technical reasons is a non argumentChociaż 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.
concept3d
11
Ponadto zmiana FOV może ujawnić błędy, a ich usunięcie jest zdecydowanie kwestią budżetową.
Jari Komppa,
10
Umożliwienie regulowanego pola widzenia jest potencjalnie o wiele więcej pracy niż tylko jedna linia kodu. J. Kyle Pittman z Gearbox napisał dobry artykuł na temat problemów związanych z dodawaniem regulowanego FOV do Borderlands 2, powinieneś go przeczytać: gearboxsoftware.com/community/articles/1061/...
nwellcome
3
@nwellcome Wygląda na to, że wszystkie problemy, o których wspomniał w artykule, wynikają z późniejszego wdrożenia suwaka FOV, po tym, jak wszystko, co było zależne od FOV, zostało już zaimplementowane.
API-Beast
4
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.
TankorSmash
2

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.

deworde
źródło
To tysiąc razy to! Każde przełączenie, które dodasz, podwaja obciążenie kontroli jakości lub „zmniejsza o połowę zespół kontroli jakości”. Jeśli masz płynną skalę, możesz co najwyżej przetestować tylko skrajności. Funkcje muszą zostać przetestowane, a funkcje połączone, więc chcesz uniknąć wybuchu kombinatorycznego, aby móc dostarczyć solidną, zabawną grę z ograniczonym budżetem i na czas.
uliwitness
0

Z punktu widzenia użytkownika głównym powodem jest to, że w trybie dla wielu graczy szerszy FOV daje niesprawiedliwą przewagę.

JamesRyan
źródło
5
Z pewnością przewaga nie jest niesprawiedliwa, jeśli konkurencja ma również suwak FOV.
Marcks Thomas
1
Może się to wydawać na pierwszy rzut oka, ale tak nie jest, ponieważ aby być konkurencyjnym, ludzie byliby zmuszeni do ekstremalnych warunków, a następnie musieliby wybierać między przyjemnością a konkurencją.
JamesRyan
1
@MarcksThomas Grałem w Q3 z kimś, kto użył 120 FOV (a może nawet wyżej). Mam powyżej 90 lat. To nie było w porządku.
Almo
2
Zawsze lubię maksymalizować swoje pole widzenia, ale mój procesor to śmieć, a do tego mam tylko monitor laptopa - który nie jest taki duży. Twierdziłbym, że czasami istnieje „nieuczciwa” przewaga sprzętowa, płynna rozgrywka jest ważniejsza niż FOV, a duży ekran daje również ogromną przewagę. Jest w tym wiele różnych czynników, nie tylko FOV. Poza tym początkowo nie lubiłem wysokiego pola widzenia, ale naprawdę się do niego przyzwyczaiłem.
Lysol,
Zgadzam się z tym i przytoczę konkretny przypadek: FOV pojazdu w BF4. Błędnie wprowadzona łatka dodała kierowcom pojazdów wszechstronne możliwości FOV. Efektem ubocznym jest to, że prawie nie można podkraść się do pojazdów, aby je zbombardować. Mówiąc, że nie ma to wpływu na uczciwość, błędnie zakłada, że mechanika gry nie zaostrza tego, co w przeciwnym razie nie byłoby niesprawiedliwe jako poważny problem. Z natury nie ma nic złego w dopuszczaniu zmian FOV, ale ignorowanie, że mogą pojawić się problemy, to zły projekt gry.
0

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.

BobbleHead
źródło
Nie jest również pomocne, że niektóre osoby nie są świadome pełnego efektu, jaki przyniesie ta zmiana. Myślą: „Och, widzę więcej, zróbmy to duże”, a potem wyjdą z gry, bo to sprawia, że ​​chorują, obwiniają cię, gry 3D lub cokolwiek innego. Ekrany ustawień są ogromne z wieloma opcjami i rzadko pamiętam wszystkie ustawienia, które zmieniłem w znaczący sposób.
uliwitness
0

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 ...

Falco
źródło