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?
Respostas:
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 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.
fonte
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.
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.
fonte
Not having a FOV slider in your game due to budget or technical reasons is a non argument
Embora 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.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.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.
fonte
Do ponto de vista do usuário, a principal razão é que, no modo multiplayer, um FOV mais amplo oferece uma vantagem injusta.
fonte
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.
fonte
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 ...
fonte