Para
quem está chegando agora ao mundo dos jogos, ou não
teve tempo de se inteirar de todas as nomenclaturas - notadamente
aquelas referentes às tecnologias 3D, compilamos esse pequeno
conjunto de termos técnicos, usados em todas as conversas
de botequim, entre programadores de jogos. Está em uma
ordem tal que permita uma leitura corrida do texto.
Pixel:
PI(X)cture ELement (Elemento de Imagem) - A menor unidade gráfica,
gerada por um adaptador de vídeo, geralmente chamado de
"ponto". Pixels podem possuir praticamente qualquer
cor, dependendo da capacidade do adaptador ou da placa de vídeo
e à forma como o sistema operacional mostra as imagens
no monitor.
Cores
de 16, 24 e 32 bits:
Cada pixel é representado por uma cor. O modo 16 bits pode
produzir 65.536 cores, enquanto o modo 24 bits pode produzir 16,7
milhões de cores. O modo 32 bits proporciona o mesmo número
de cores que o modo 24 bits, mas gráficos de 32 bits podem
ser manipulados muito mais rapidamente do que gráficos
de 24 bits. Além disso, gráficos de 32 bits requerem
cerca de 25% a mais de memória. Como o olho humano não
consegue diferenciar mais do que 10 milhões de cores diferentes,
considera-se que tanto gráficos de 24 bits como de 32 bits
possuem qualidade fotográfica.
AGP:
Advanced Graphics Port - (Porta Gráfica Avançada)
A AGP é uma conexão ponto-a-ponto de alta velocidade
entre o chipset do sistema (northbridge) e o chip gráfico
na AGP. A AGP destina-se a aumentar a qualidade, a taxa de quadros
por segundo e a interatividade de aplicativos 3D e otimizar o
custo do equipamento. A característica chave da AGP é
sua interface de alta velocidade com a memória principal.
Isto significa que o buffer de quadros (e, mais significativamente,
as funções de cache do buffer de quadros) pode localizar-se
na memória principal, ao invés de na placa de vídeo
(reduzindo o custo). Desta forma, recursos 3D tais como mapas
de textura podem ser maiores e armazenados na memória principal,
ao invés de no buffer de quadros.
3DNow!
e MMX: São
tecnologias diferentes, mas com execução de instruções
e codificação semelhantes. A tecnologia MMX foi
desenvolvida para acelerar operações baseadas em
números inteiros, tal como criar gráficos em 2D.
A tecnologia 3DNow! foi desenvolvida para acelerar operações
dependentes de ponto flutuante, aumentando a performance de gráficos
3D e multimídia
API:
Application Programming Interface - (Interface de Programação
de Aplicativo) Um conjunto de rotinas que um aplicativo utiliza
para solicitar e conduzir serviços de baixo nível
executados por um sistema operacional de computador. Ou, em uma
linguagem mais simples, um conjunto de rotinas que localiza-se
entre o hardware (CPU e Processador de vídeo, por exemplo)
e o aplicativo de software (um jogo, por exemplo). Os programadores
só precisam escrever o código uma vez para a API,
permitindo que ele rode no hardware de qualquer fabricante.
DirectX:
É uma API do Microsoft Windows voltada para o desenvolvimento
de programas com conteúdo multimídia. Segundo a
Microsoft, ela oferece o primeiro conjunto completo de ferramentas
que permite aos programadores acessar a flexibilidade multi-plataformas
da Internet e as poderosas capacidades de multimídia do
computador pessoal. O DirectX 6.0 ou superior é otimizado
para 3DNow!
Direct3D:
É uma API DirectX utilizada especificamente para gráficos
3D. A Direct3D é uma importante API para jogos e outras
aplicações 3D.
OpenGL:
É uma API alternativa para gráficos 3D, aberta e
multi-plataforma, utilizada primeiramente pela Silicon Graphics.
Atualmente é considerada um padrão de mercado para
estações de trabalho 3D de ponta e vem se tornando
popular entre muitas empresas fabricantes de jogos.
Taxa
de "Blit":
O processo de copiar uma seqüência de dados da memória
principal do PC para a da placa de vídeo é chamado
de "Blitting". A velocidade desta operação
é a taxa de "blit".
Taxa
de Preenchimento:
Uma medida de quantos pixels uma placa 3D pode desenhar em um
segundo.
Engine:
A parte de um programa de software que gerencia e atualiza os
gráficos 3D em tempo real.
Sprite:
Um objeto gráfico (freqüentemente, um caracter ou
cursor) que pode ser movimentado sobre uma imagem de fundo.
Polígono:
Uma figura fechada, separando uma área interna de uma externa,
formada por pelo menos três linhas - um triângulo,
por exemplo. Triângulos (polígonos simples de três
lados) formam a base para objetos criados no ambiente 3D. Na maioria
dos aplicativos 3D, os objetos são feitos de polígonos
dispostos em uma variedade de maneiras, de modo a criar uma imagem
realística. Na maioria das vezes, centenas ou milhares
de polígonos são necessários para um único
objeto 3D, criando uma enorme quantidade de dados a serem gerados
e manipulados.
Texel:
TE(X)ture ELement (Elemento de Textura) - Um pixel de um mapa
de textura que foi aplicado a um polígono.
Malha:
Termo para um objeto ou cena 3D - assim denominado por possuir
a aparência de fios entrelaçados (como em uma rede).
Estrutura
de Arame: Uma
exibição bruta de um objeto, utilizando linhas para
representar as bordas dos polígonos, o que a faz lembrar
uma escultura feita de uma malha de arame.
Sombreamento
Plano: Mostra
a superfície e as cores, de uma maneira simples. Os objetos
parecem, freqüentemente, facetados (pouca ou nenhuma suavidade
entre os polígonos).
Sombreamento
Suave: Mostra
a superfície com cor e suavização. É
um modo de exibição muito popular atualmente, pois
o hardware pode suportá-lo. Ainda assim, requer muito poder
de processamento.
Texturização
suave: Começa
a parecer-se com uma renderização pronta. Exige
uma quantidade enorme de poder de processamento da CPU e de memória.
Iluminação:
São necessárias luzes para iluminar objetos em rotação,
de forma que eles pareçam o mais realísticos possível
na renderização final. Quatro tipos principais de
luzes são utilizadas em software 3D.
Luzes
Omni: Como uma
lâmpada, iluminando objetos em todas as direções.
Luzes
Spot: Destacam
uma porção de um objeto.
Luzes
Distantes: Usadas
para simular fontes distantes de luz, tais como a lua, que cria
sombras paralelas.
Luz
Ambiente: Presente
em todos os lugares, em um espaço 3D. Usada para simular
a luz refletida por outros objetos
Brilhos
Especulares: Os reflexos brilhantes de luz
vistos em objetos polidos.
Renderização:
O processo de um computador interpretar todos os dados de objetos
e iluminação, e então criar uma imagem finalizada,
vista pela perspectiva escolhida
Renderização
"Chata" (Flat):
Cria superfícies de polígonos com contornos nítidos,
cada uma preenchida por uma só cor. Um meio muito rápido,
porém bruto, de renderizar uma cena.
Sombreado
Gouraud: Une suavemente
superfícies de objetos, tornando-os muito mais realísticos
do que superfícies com renderização "chata".
Muitos dos jogos e simuladores de vôo 3D em tempo real da
atualidade utilizam sombreado Gouraud (também conhecido
como sombreado suave).
Sombreado
Phong: Uma forma de sombreado mais realística
e complexa do que Gouraud, e que requer ainda mais poder de processamento.
Ray
Tracing (Traçado de Raios):
O mais alto nível de qualidade de renderização
disponível através da maioria de aplicativos de
desenvolvimento 3D em computadores desktop. Permite que um raio
seja refletido em superfícies e distorcido, exatamente
como a luz real. O resultado obtido e muito realístico,
com sombras extremamente precisas, reflexões e até
mesmo refração.
Transformações:
Operações que alteram a posição, o
tamanho ou a orientação de um objeto. Transformações
comuns incluem Mover, Ampliar/Reduzir e Rotacionar.
Deformações:
Semelhante as transformações, mas alteram objetos
de maneiras como Torcer, Entortar, Enviesar etc.
Corte:
Eliminação de quaisquer polígonos fora do
campo de visão do observador
Mapeamento
de Textura: É o processo de desenvolver
e designar atributos de material a um objeto, para proporcionar
uma aparência realística. Antes de as texturas serem
aplicadas, todos os objetos 3D possuem uma aparência padrão
de plástico, seja cinza ou em algumas cores. O mapeamento
dá ao objeto uma cor, acabamento, ou textura específicos.
Na realidade, os objetos possuem contornos brutos e imperfeições.
O mapeamento de texturas permite este tipo de realismo. Pense
em uma pedra: uma parede composta por retângulos levemente
irregulares, todos com superfícies chatas e cinzas e tão
pouco convincente quanto uma parede feita de blocos perfeitos.
Mas quando a textura de uma "pedra", com suas imperfeições,
é adicionada aos objetos, os blocos anteriormente cinzas
e simples adquirem a aparência de pedras verdadeiras.
Textura:
Uma imagem em bitmap, seja digitalizada ou pintada, que proporciona
a um material qualidades realísticas.
Correção
de Perspectiva: Corrige as texturas, ajustando-as
a perspectiva do observador. Os jogos, hoje em dia, tendem a utilizar
triângulos relativamente grandes e empregar mapas de textura
para dar a aparência de muito mais detalhe do que seria
possível de outra forma. Apesar de a manutenção
da perspectiva correta exigir poder de processamento, as abordagens
alternativas resultam em distorção visível
e texturas flutuantes, o que provoca perda de atenção
na cena em doses brandas e enjôo em doses maiores!
Mapeamento
MIP: Esta técnica melhora a qualidade
de imagem de objetos 3D distantes. Mapas MIP são texturas
múltiplas com diferentes resoluções, que
representam a textura quando vista de distâncias variadas
e são substituídas na textura conforme o ponto de
vista aproxima-se (ou afasta-se) do objeto. Este recurso evita
que objetos distantes tenham uma aparência caótica.
Filtragem
bilinear: A filtragem
bilinear é uma das maneiras mais simples de evitar um efeito
"pixelated" (aparência de mosaico, ou em blocos)
nas texturas, o que pode se tornar especialmente obvio quando
o observador aproxima-se de um objeto com mapeamento de textura,
tal como uma parede. Este recurso suaviza a textura, colorindo
cada texel com uma media ponderada dos valores das cores dos quatro
texels ao redor. A diferença da qualidade resultante é
dramática, especialmente nos casos em que mapas de textura
são ampliados.
Anti-alias:
Pelo fato de imagens digitais serem basicamente constituídas
por uma matriz de pontos, as linhas que não sejam perfeitamente
horizontais ou verticais podem criar objetos com linhas serrilhadas
(com a aparência de uma "escada"). Estas imagens
com os cantos quadrados são chamadas, freqüentemente,
"jaggies". O Anti-alias reduz este efeito, preenchendo
os pixels nas regiões "serrilhadas" como cores
intermediários entre a cor da linha e a cor de fundo, suavizando
as bordas e tornando a linha mais fluída.
Névoa:
Um dos efeitos atmosféricos mais comuns - permite que objetos
próximos sejam vistos claramente, ao passo em que objetos
distantes podem parecer esmaecidos. Por exemplo, os objetos podem
parecer dissolver-se na névoa distante. Este efeito é
não somente atmosférico, mas os programadores gostam
dele porque pode-se reduzir a quantidade de detalhes contidos
ao mesmo tempo em uma cena, reduzindo-se assim o peso sobre a
CPU e o acelerador gráfico.
Buffer
Z: Um recurso relativamente novo e popular,
serve para coordenar precisamente a superposição
de objetos no espaço 3D. Usado freqüentemente para
a criação de efeitos de névoa. Ao invés
de armazenar apenas a posição espacial de um pixel
(x,y), o buffer z armazena também a profundidade. Um buffer
contendo estes valores de profundidade é denominado buffer
z.
Combinação
Alfa: Método de misturar texturas,
permitindo muitos efeitos visuais, como reflexões ou transparência
parcial. Os objetos podem adquirir um alto grau de transparência,
tal como água límpida, ou uma translucência
parcial, como explosões.
|