Por que eu não deveria permitir alterar o campo de visão, se a tecnologia permitir?

28

Esta é uma questão menos voltada para o desenvolvimento de um jogo e mais sobre a tecnologia por trás dele. Vários jornalistas de jogos e profissionais (tanto no setor de torneios quanto no de entretenimento doméstico) costumam insistir no fato de que qualquer jogo de primeira ou terceira pessoa deve ter uma maneira de mudar o campo de visão, e eu concordo com eles. A principal razão pela qual eles mencionam isso é porque um número bastante grande de jogadores sofre de dores de cabeça e fadiga ocular relacionadas a movimentos, se jogar com um campo de visão excessivamente restrito.

Entendo se um desenvolvedor independente não permite isso devido a restrições de orçamento, porque precisa adicionar suporte ao mecanismo para isso. No entanto, vários desenvolvedores usam mecanismos de terceiros de alto perfil como Frostbite, Unity, Unreal ou Cryengine, mas não oferecem uma opção para alterar o campo de visão.

Por que eu não deveria permitir alterar o campo de visão, se a tecnologia permitir?

Nzall
fonte
6
Estranhamente, acho que mudar o campo de visão é profundamente desagradável; mesmo que eu redefini-la para o padrão Eu nunca acreditei que parecia certo novamente
Richard Tingle
5
Você tem alguma referência de origem para esse "número bastante grande de jogadores" e, de preferência, mais de um?
Patrick Hughes
2
De acordo com theguardian.com/lifeandstyle/2011/dec/19/… , 10-50% das pessoas em todo o mundo sofrem dessa doença em algum aspecto.
Nzall #
Eu fico totalmente doente acima 90.
Almo

Respostas:

39

4A Games, os desenvolvedores de Metro: Last Light estavam recebendo muitas críticas por não terem um controle deslizante de FoV em seu jogo. O gerente da comunidade Maurice Tan defendeu sua decisão nos fóruns do Steam da seguinte forma :

O principal motivo para manter um FOV fixo é porque temos elementos 3D, como munição de armas e relógios, que precisam permanecer visíveis.

Além disso, todas as cenas cortadas e cinematográficas em primeira pessoa do jogo e toda e qualquer animação envolvendo as mãos de Artyom - animações inativas de armas, recargas, subidas de escada, ataques corpo a corpo etc. - foram criadas assumindo o mesmo campo de visão fixo.

Alterar o FOV quebraria todas as cenas e animações - você seria capaz de ver dentro dos braços de Artyom, ou eles pareceriam flutuar no ar à sua frente. Ou pior.

Tínhamos pensado em oferecer três predefinições de FOV, mas isso ainda exigiria um trabalho significativo para refazer todas as animações, ajustar o HUD e a interface do usuário e outras tarefas aparentemente pequenas, mas incrivelmente demoradas.

Mesmo com um campo de visão mais amplo, mas ainda fixo, as mãos de Artyom pareceriam muito distantes. Nós sabemos - nós tentamos.

O desempenho do jogo também está atrelado ao FOV - a quantidade de detalhes geométricos que colocamos em cada cena foi parcialmente determinada por esse conjunto de FOV, e definir um FOV mais amplo teria um impacto no desempenho.

O principal motivo para não ter um controle deslizante de FoV foi que eles estavam adotando uma abordagem de alta imersão no-hud, pois todas as informações importantes para o jogador eram exibidas em elementos 3d em seu campo de visão. Quando sua GUI faz parte da cena de renderização, alterar o FOV altera sua GUI.

Algo que Tan não mencionou no post acima, mas que provavelmente também fez parte da decisão deles, é que o FOV é importante para o planejamento de níveis. Metro: Last Light é um jogo de horror, com muitos pulos e outros momentos de choque. Existem muitas situações em que o jogador se distrai com algo interessante, então olha em uma direção e é surpreendido por um ataque repentino do lado. Esse efeito de choque só pode funcionar quando os projetistas de níveis conhecem o FOV do jogador e, portanto, sabem o que podem ou não ver ao olhar de um determinado ponto para outro.

O mesmo problema também aparece de maneira diferente ao direcionar cenas. Quando você tem cenas de primeira pessoa de alta imersão, provavelmente deseja ter controle total sobre a câmera para poder controlar o que o player pode ou não ver. Mas quando você não conhece o FOV, dirigir a cinematografia corretamente pode ser impossível. Quando o FOV do jogador for maior do que o esperado, eles verão objetos que não deveriam ver ainda. Quando o FOV é menor, o jogador não vê o que deve ver durante uma cena.

Philipp
fonte
Lembre-se de que o desempenho também é uma grande preocupação. O Metro Last Light (eu joguei) sofria de problemas de desempenho, mesmo no PC (mas os desenvolvedores geralmente não dizem isso à comunidade porque não é apropriado).
precisa saber é o seguinte
2
Eu já vi isso mencionado com freqüência, não compro. Em um jogo como Metro: Last Light, você precisa de um intervalo em que o FOV é "válido", mas qualquer coisa entre 75-110 deve estar OK. É simples, torne visível tudo o que é importante <75, as animações e modelos adequadamente visíveis 75 << 110 e tudo "oculto"> 110. As pessoas têm telas diferentes e não conseguem se adaptar a isso é ridículo, especialmente quando as pessoas conseguem movimento doente com a projeção errada. É um recurso de acessibilidade e o esforço mínimo envolvido torna isso imperdoável. Eu acho que para esse desenvolvedor foi uma reflexão tardia.
Rio2013
@ concept3d: Não é apropriado por muito boas razões. Se eu não posso rodar o jogo a 120 graus, então ... então? Alguém mais poderia. PCs não são consoles, o argumento "se você usasse essa opção seria mais difícil de executar" não é válido.
Phoshi
@Phoshi that's exactly what I was saying. But it could be a big reason why they fixed the FOV in Metro Last Light PC, not only a gameply reason.
concept3d
12

Não ter um controle deslizante FOV em seu jogo devido a razões técnicas ou de orçamento não é um argumento. FOV é apenas um parâmetro na criação da matriz de visão e projeção. Depois de ter uma matriz adequada, todos os outros cálculos seguirão sozinhos. Em outras palavras, alterar o FOV significa que apenas uma linha de código precisa ser alterada (normalmente na classe de câmera) e que uma opção precisa ser adicionada ao menu. A mudança não se propaga para outros sistemas, eles apenas 'veem' a matriz 4x4 e não se importam com o significado dos valores dentro dela.

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

Criação de matriz com campo de visão em XNA

No entanto, existem boas razões para não ter um controle deslizante de FOV mutável. Definir um FOV mais alto significa que você pode ver mais do mundo na tela; isso terá impacto no desempenho. Outra razão é que, em partidas competitivas, o jogador com uma configuração de FOV mais alta terá uma vantagem, pois esse jogador pode ver mais ao seu redor. Por fim, pode ser uma escolha estética. Um FOV estreito dará ao jogador uma sensação diferente de um FOV amplo. Especialmente em atiradores com corredores estreitos, um FOV estreito poderia adicionar à experiência. Um bom exemplo disso são os jogos de Call of Duty, onde quando você mira, o FOV se torna menor.

(Observe que, pessoalmente, eu não acredito que qualquer uma das razões acima deva colocar um valor muito baixo no FOV, eu só quero ilustrar que de forma alguma é um problema técnico.

Roy T.
fonte
10
Not having a FOV slider in your game due to budget or technical reasons is a non argumentEmbora eu concorde com tudo o que você disse, esse não é o caso em consoles, o FOV pode impactar muito o desempenho, especialmente em hardware mais antigo como PS3 / X360, mas o FOV afeta diretamente o abate de frustum e, portanto, tem um impacto considerável em algumas plataformas.
concept3d
11
Além disso, alterar o FOV pode expor bugs e corrigi-los é definitivamente uma questão de orçamento.
Jari Komppa
10
Permitir um FOV ajustável é potencialmente muito mais trabalhoso do que apenas uma linha de código. J. Kyle Pittman da Gearbox escreveu um bom pedaço sobre os problemas acrescentando FOV ajustável para Borderlands 2 causou, você deve lê-lo: gearboxsoftware.com/community/articles/1061/...
nwellcome
3
@nwellcome Parece que todos os problemas que ele mencionou no artigo decorrem da implementação do controle deslizante FOV como uma reflexão tardia, depois que tudo, dependendo do FOV, já foi implementado.
API-Beast
4
Not having a FOV slider in your game due to budget or technical reasons is a non argument, isso não é verdade. Um jogo pode não ter sido projetado para um FOV diferente desde o início e possui sistemas que dependem dele. Só porque um esqueleto de projeto de barebones pode suportar a alteração de valor, não significa que um projeto de um milhão de linhas possa.
precisa saber é o seguinte
2

Uma coisa que ninguém mais mencionou é testar.

Cada aspecto do controle que você dá a um jogador é outra variável que você precisa testar. Para uma cobertura total aproximada, você precisa efetivamente lidar com cada FoV em potencial, caso tenha problemas gráficos apenas em um nível em circunstâncias específicas, quando estiver em FoV mais amplo ou mais estreito, ou "quando você salvou o jogo mais estreito e aberto salvar no mais amplo ".

Esse custo / atraso adicional pode não valer o valor adicional do alargamento do FoV. Só porque o mecanismo suporta isso não significa que "apenas funcionará" (embora o torne mais provável). E só porque todos os cálculos devem dar certo não significa que a experiência do usuário será positiva.

Deworde
fonte
Isso, mil vezes isso! Cada alternância que você adiciona, dobra sua carga de controle de qualidade ou "reduz pela metade sua equipe de controle de qualidade". Se você tem uma escala de fluidos, você pode, na melhor das hipóteses, testar apenas os extremos. Os recursos precisam ser testados e os recursos combinados, para que você evite a explosão combinatória para poder lançar um jogo sólido e divertido dentro do orçamento e do prazo.
uliwitness
0

Do ponto de vista do usuário, a principal razão é que, no modo multiplayer, um FOV mais amplo oferece uma vantagem injusta.

JamesRyan
fonte
5
Certamente a vantagem não é injusta se a competição também possuir um controle deslizante de FOV.
Marcks Thomas
1
Pode parecer assim, mas esse não é o caso, porque, para ser competitivo, as pessoas seriam forçadas a situações extremas; então, devem escolher entre uma experiência agradável ou competitiva.
JamesRyan
1
@MarcksThomas Joguei Q3 com alguém que usou 120 FOV (ou talvez até mais). Fico doente acima dos 90. Não parecia justo.
Almo
2
Eu sempre gosto de maximizar meu FOV, mas minha GPU é um lixo e, além disso, só tenho um monitor de laptop - que não é tão grande. Eu diria que às vezes há uma vantagem "injusta" com o hardware, uma jogabilidade suave é mais importante que o FOV, e uma tela grande também oferece uma enorme vantagem. Há todo tipo de fatores nisso, não apenas o FOV. Além disso, no começo não gostei do FOV alto, mas realmente me acostumei.
Lysol
Eu concordo com isso e cito um caso específico: veículo FOV em BF4. Um patch equivocado acrescentou o que equivale à capacidade total de FOV para os motoristas de veículos. O efeito colateral é que torna quase impossível aparecer nos veículos para bombardeá-los. Dizer que isso não afeta a justiça incorretamente pressupõe que a mecânica do jogo não exacerba o que de outra forma não seria injusto em ser um problema sério. Não há nada de errado em permitir alterações no FOV, mas ignorar que problemas podem surgir é um design de jogo ruim.
0

Como desenvolvedor, alterar o campo de visão é uma decisão precária a ser tomada. Isso também precisaria ser uma decisão tomada no início do jogo; em um estúdio para várias pessoas, é importante que uma taxa de quadros mínima e FOV sejam determinados desde o início, para que as animações e o abate de oclusão tenham algo estrito para trabalhar. É claro que a seleção por oclusão pode ser baseada em vários fatores, não apenas na visualização da câmera.

Eu diria que a principal razão pela qual nunca permiti que o FOV fosse alterado no jogo é que, quando esse é o caso, a jogabilidade geralmente é bastante alterada, eu também sabia que causava enjoo. Isso também significa que a câmera está renderizando mais, significando um enorme desempenho, já que os jogos geralmente são otimizados para o FOV definido.

No entanto, isso pressupõe que eu estou permitindo controle total. Pode haver um escopo para permitir que o usuário altere o cone de exibição, digamos 70-110 ou algo assim, mas eu não sei sem testar isso sozinho.

BobbleHead
fonte
Também não é útil que algumas pessoas não estejam cientes do efeito total que essa alteração causará. Eles pensam que "Oh, eu posso ver mais, vamos fazer grande" e depois encerram o jogo porque os deixam doentes, culpando você, ou jogos em 3D ou qualquer outra coisa. As telas de configurações são enormes, com muitas opções, e raramente me lembro de todas as configurações que mudei de maneira significativa.
uliwitness
0

Os outros deram um monte de boas razões - Estética (cenas cortadas, aparência e sensação desejadas do jogo), Balanceamento multijogador, Queda de desempenho com FOV mais intenso, mas quero acrescentar algumas idéias ao aspecto técnico:

Especialmente, os problemas técnicos provavelmente são mais complicados do que muitos pensam, já que muito processamento é feito no GraphicsBuffers e esses buffers geralmente têm uma resolução fixa - portanto, muitos detalhes gráficos dependem da tradução desses buffers para a geometria real. . Por exemplo, muitos algoritmos modernos de Sombra (além das sombras volumétricas) parecem cada vez mais Blocky e Alias ​​com um FOV mais alto e o mesmo tamanho de buffer. O mesmo vale para qualquer algoritmo que faça operações semelhantes ao rastreamento de raios, porque o FOV é mais amplo, os raios únicos são espalhados em um arco mais amplo e mais detalhes podem ser perdidos em aproximações ...

Falco
fonte