Qual era a cadeia de ferramentas típica para o desenvolvimento de jogos para DOS? [fechadas]


15

Gostaria de saber como as pessoas costumavam escrever jogos DOS (como Doom), não consigo encontrar muito sobre isso, mas gostaria de saber mais sobre os dias anteriores do desenvolvimento de jogos.

Qual idioma foi usado predominantemente?

Eu presumo que era C. Ou C ++ já?

Quais IDEs (ou editores / compiladores) eram populares?

O Microsoft Visual C / C ++ (ou Microsoft C / C ++ como eu costumava ser chamado) não existia na época no AFAIK. Então, o que as pessoas usavam? editar e um compilador de linha de comando da Intel ou algo assim?

Quais APIs foram usadas?

O que era comum para jogos 2D? E os jogos em 3D como Doom e Tomb Raider?

Mais alguma coisa diferente de hoje?

Ficaria feliz em ouvir outras diferenças, como quais formatos de imagem / áudio foram usados.


Tenho certeza de que você pretende fazer alguma pesquisa para este trabalho de classe. Talvez gdcvault.com/play/1014627/Classic-Game-Postmortem possa lhe dar um começo.
Daniel Carlsson

Não é uma tarefa, estou fora da escola / faculdade. Eu pesquisei no google por um tempo, mas não consegui encontrar muita coisa.
Futlib 12/08/12

Lembro-me de ler uma nota de um dos caras da ID sobre o Watcom C ++. Borland sempre foi bastante popular porque seus compiladores eram loucos RAPIDAMENTE. (Eu usei para reconstruir três ou quatro vezes seguidas, porque eu não estava convencido de que nada tinha realmente acontecido.)
3Dave

Respostas:


19

Idioma: C foi predominante, mas o C ++ foi utilizado e utilizado.

Ferramentas de desenvolvimento: Os ambientes de desenvolvimento incluem os da Borland e Watcom (quase inéditos hoje), entre outros. Borland e Watcom tinham seus próprios compiladores e seus próprios IDEs. A Borland era de longe a mais popular em geral, embora a Watcom tivesse a reputação de produzir programas compilados mais rapidamente, o iirc.

APIs: poucas APIs existiam ou foram usadas. A programação de vídeo geralmente consistia em escrever pixels diretamente no buffer de quadros VGA. Até jogos em 3D foram rasterizados por software. A API de som Miles foi usada para áudio, que incluía drivers internamente, pois o sistema operacional não possuía sua própria estrutura ou drivers de áudio. As entradas de teclado e mouse geralmente eram lidas diretamente do sistema. Havia alguns extensores de memória populares para o modo de 32 bits que eram muito populares e necessários no final do reinado do DOS. Felizmente, o hardware era simples, mas definitivamente era um problema nos jogos de escrita anal que funcionavam em uma variedade de hardware. Bibliotecas para lidar com todo o material simples de baixo nível (como SDL, SFML, GLFW etc.) não existiam,

Em uma nota lateral ao ponto anterior, Doom não era 3D da maneira como a conhecemos hoje. Isto é, impôs enormes limitações aos ambientes 3D devido ao seu algoritmo de rasterização de software altamente especializado, e os personagens e itens foram todos sprites.

Formatos de arquivo: Os formatos de ativos eram tão proprietários quanto o mecanismo do que são agora. Lembro-me vagamente de que Bink estava por lá na época para o vídeo (o que era muito raro, geralmente apenas nas sequências de abertura e fechamento), e acho que a Creative tinha alguns formatos de som especializados. Não tenho certeza de que fonte ou formatos intermediários eram populares para som ou vídeo naquela época, mas o TGA era bastante popular para imagens.


11
O middleware onipresente que muitos licenciaram para áudio era o Miles , que fornecia abstração de driver para muitos dispositivos. Se você não usou o Miles, provavelmente é compatível apenas com Adlib ou SoundBlaster. Para ativar o suporte a VESA em placas herdadas, alguns jogos usaram o UniVBE .
Lars Viklund 12/08/2012

Está certo! Boa memória! :)
Sean Middleditch

Posso estar errado, mas acredito que a referência que você está tentando fazer foi para Watcom , não para Watson . Eles criaram um excelente compilador C e um servidor SQL leve chamado Watcom SQL, um antecessor do SQLite, que eu gostei muito.
22612 Bob

Na verdade, você está correto. Minha memória está definitivamente ficando mais confusa na minha velhice.
Sean Middleditch

O ASM provavelmente era mais comum do que agora. Você precisava reduzir o desempenho extra e os otimizadores do compilador não eram tão bons quanto agora. Ou seja, a maioria ainda está em C, mas os motores provavelmente tinham peças ASM.
edA-qa mort-ora-y 12/08/12

4

Como conclusão do post de Sean, desde que você mencionou o Doom: existe um bom blog de Fabien Sanglard, que fez uma revisão sobre a parte do código usado para fazer o Doom (o de 1993). A revisão está aqui: http://fabiensanglard.net/doomIphone/doomClassicRenderer.php

PS: O blog tem muitas análises de códigos relacionadas ao Doom / Quake, e é uma boa leitura para um desenvolvedor de jogos ver como outros criaram um jogo desde o início

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.