Introdução aos Jogos Digitais
Voltar para Jogos Digitais
Game Design
O Game Design é o projetista de jogos de computador. Sua função, além de elaborar o GDD (Game Design Document), é fazer a ponte entre as áreas envolvidas em um projeto de jogos de computador: programação, ilustração, engenharia de áudio, etc.
Entre alguns game designers conhecidos, podemos citar:
- Sid Meier (Civilization);
- Will Wright (Simcity, Spore, The Sims);
- John Romero (Doom, Wolfenstein, Quake);
- Richard Garriott (Ultima Online, Tabula Rasa);
- Richard M Ford (Títulos de GURPS);
- Hironobu Sakaguchi (Final Fantasy);
- Shigeru Miyamoto (Donkey Kong, Mario, Zelda);
Elementos Gráficos
- Sprite: Elementos que fazem parte de uma animação.
- Tile: Blocos estáticos que geralmente compõem cenário. Caracteriza-se por ser múltiplo de 2.
- Spritesheet: Conjunto de sprites dispostos em uma folha única.
- Tilesheet: Conjunto de tiles dispostos em uma folha unica.
- Offscreen: Superfície que detém as imagens carregadas.
- Backbuffer: Usada como superfície de trabalho.
- Frontscreen: Área visível da tela.
Offscreen -> Backbuffer -> Frontscreen
Offscreen
Blit
O Blit é uma das operações mais importante em processos gráficos. A operação se baseia em copiar dados, uma região retangular, de uma imagem. Para isso é indicado o frame de origem (offscreen) e o frame de destino (backbuffer).
Transparência
Para criar transparência em jogos de computador, utiliza-se uma cor chave (color key) para ser ignorada na hora de desenhar.
- Padrão: RGB (255,0,255) (16,24,32 bits)
- Padrão: RGB (0,0,0) (8 bits)
Flickering
Os dados da VRAM são atualizados muito mais rápidos que o canhão de elétrons do monitor, isso leva a um efeito indesejado, fazendo a tela piscar. O motivo disso é o blit direto na superfície primária (blit).
HBLANK e VBLANK
Game Loop
O game loop é composto por um laço mestre constante. Ele engloba os mecanismos lógicos e de renderização.
Linguagem C++
A linguagem C++ tem certas vantagens no desenvolvimento de jogos de computador. Ela permite orientação a objetos, acesso a baixo nível e é utilizada na maioria das plataformas. Além disso, existe uma extensa quantidade de exemplos disponíveis para estudo. Por fim, a maioria das linguagens e ferramentas conhecidas (Engines, Authorwares, etc.) são derivadas de C++.
Jogos de Computador + UML
A UML (Unified Modeling Language) Também pode ser utilizada para modelar um jogo de computador. Por meio dessa metodologia é possível a visualização dos itens essenciais em um formato de diagramas personalizados. A grande vantagem de se utilizar uma metodologia padronizada é a melhoria na comunicação entre programadores, engenheiros de software e game designers. Além disso, facilita a visualização de todo o sistema, principalmente quando em um projeto grande.