Por que os antigos jogos em 3D tinham gráficos "instáveis"? [fechadas]

15

Ultimamente, eu tenho jogado "MediEvil" , e isso me fez pensar: o que faz com que alguns dos antigos jogos em 3D tenham gráficos "fluidos" ao se mover? Está presente em jogos como "Final Fantasy VII" , "MediEvil" , e eu lembro que "Dungeon Keeper 2" tem a mesma coisa no modo zoom. No entanto, exemplos como "Quake 2" não tiveram esse "problema" e são igualmente antigos. A resolução não parece ser o problema, tudo fica perfeitamente bem quando você fica parado. O jogo está atualizando lentamente, ou tem algo a ver com buffer?

dreta
fonte
5
Você pode criar um link para um vídeo que demonstre o efeito de que está falando?
precisa saber é o seguinte
11
youtube.com/watch?v=H-M6EPgs1JY&t=1m20s, por exemplo, cada vez que a câmera se move, a tela fica louca, parece estranho, o PS não parece ter problemas para gerar uma linha reta, então não acho é pixelation apenas
dreta
11
Não consigo ver nada ... talvez estivesse tão acostumado a jogar naquela época que nem percebi os problemas. Mas meu primeiro pensamento foi que talvez você estivesse vendo a transformação de textura afetiva mencionada na resposta de Mike, que pode fazer as coisas parecerem se esticar estranhamente com base no ângulo de visão.
Kylotan
@Kylotan é especialmente notável em movimentos mais lentos da câmera (por exemplo, em torno de 16 min no link do dreta no YouTube, você deve notá-lo no chão e nas paredes.) Acho que é por isso que os jogos PS tinham câmeras tão rápidas em quase todos os jogos :)
kaoD
11
Estou votando para encerrar esta questão como fora de tópico, porque está perguntando por que um amplo conjunto de videogames agiu da maneira que eles fizeram. Essas perguntas são genericamente fora de tópico, pelo menos agora, já que se baseiam em especulações de como os desenvolvedores realmente fizeram o que fazem. Frequentemente, podemos melhorar essas perguntas com uma revisão de "como faço isso no meu próprio jogo", mas essa não parece ser a intenção real aqui.
Gnemlock 29/05

Respostas:

27

Eu tenho apenas as citações mais bizarras para isso, mas parece que no PlayStation original, a unidade vetorial (que geralmente era usada para transformar vértices) era capaz de operações de ponto fixo, e o rasterizador também usava matemática de ponto fixo, mas somente números inteiros podem ser passados ​​entre os dois. Então você está vendo artefatos de quantização: os cantos dos polígonos estão sendo encaixados no ponto da grade mais próximo. Perfeitamente estável para uma cena parada, mas bastante desconcertante em movimento.

A partir de um pouco de pesquisa adicional, parece que o PlayStation original tinha resoluções diferentes nas quais o rasterizador poderia funcionar, de 256x224 a 740x480. Portanto, você pode escolher resoluções mais baixas para obter uma melhor taxa de preenchimento, mas verá esses tipos de artefatos, pois a grade em baixas resoluções é grossa o suficiente para detectar facilmente a olho nu.

John Calsbeek
fonte
IIRC no PC (relacionado a animações de malha), houve alguns problemas (recentemente corrigidos entre 2000 e 2005) com cálculos de ponto flutuante na GPU - não me lembro qual era o problema exato, mas resultou em muito " desconcertantes "animações de personagens. Lembro-me de Star Wars The Phantom Menace exibiu esse comportamento bastante drasticamente.
Jonathan Dickinson
@ JonathanDickinson Você não está pensando no efeito "embalagem de doces" nas articulações, está? isg.cs.tcd.ie/projects/DualQuaternions
John Calsbeek
Não, foram algumas imprecisões que surgiram por razões que simplesmente não me lembro.
9788 Jonhinsoninson
9

Se você joga o Quake 2 no modo de software, ele realmente apresenta alguns dos problemas mencionados. Se você olhar para modelos certian em ângulos agudos no Quake 2, verá as texturas "nadando". Isso ocorre porque muitos dos primeiros mecanismos 3D usavam mapeamento de textura afim . Isso evita a dispendiosa divisão por pixel, que oferece o mapeamento correto da textura em perspectiva, mas significa que suas texturas serão distorcidas quando vistas em ângulos nítidos.

Além disso, muitos jogos em 3D anteriores (incluindo o Quake 2) usavam morphing simples de vértices para animar seus modelos, em oposição à animação esquelética. Os vértices são interpolados entre quadros-chave com interpolação linear. Naturalmente, isso não preserva muito bem as distâncias entre os vértices, então você acaba com a síndrome do vértice da geléia - os modelos balançam um pouco enquanto se animam!

Mike Welsh
fonte
2
Correta, e a resolução das malhas era de apenas 256x256; portanto, o movimento dos vértices interpolava em linhas não retas. Mais ou menos como tentar desenhar um golpe de espada com animação suave em pixel art.
Myrddin Emrys
Sim, o formato MD2 tinha apenas um 3 bytes / vértice.
Tili
11
O Quake 2 realmente fez o mapeamento de textura com correção de perspectiva, mas apenas corrigiu a cada 16 (ou 8 por meio de uma opção do usuário) pixels.
Maximus Minimus
11
Para fazer isso para declarações sobre Q2 correto: Quake perspectiva mapeamento txt correta 2 usos para a geometria nível (linear interpolação cada 16 correta do pixel calculado) e textmapping afim de objetos móveis
Peter Parker