Direct3D

Origem: Wikipédia, a enciclopédia livre.

Direct3D é uma parte da API DirectX da empresa Microsoft. O Direct3D é disponibilizado apenas para as versões do sistema operacional Windows a partir do Windows 95. Também é a base para a API de gráficos tridimensionais dos consoles de videogame XBox e XBox 360. O Direct3D é usado para renderizar gráficos 3D em aplicações onde a performance é importante, como em jogos, ele também permite os programas serem executados em tela cheia e não apenas em janelas. Se a placa de vídeo possuir aceleração por hardware a biblioteca utiliza-a de forma a reduzir o trabalho da CPU.

O Direct3D é uma API 3D, o que significa que ele possui diversos comandos para a renderização tridimensional. No entanto, desde a versão 8 da biblioteca, ele substituiu o DirectDraw e passou renderizar também gráficos 2D.[1]

Uma alternativa ao Direct3D é a API OpenGL.

História[editar | editar código-fonte]

Em 1992, Servan Keondjian iniciou uma empresa chamada RenderMorphics, que desenvolveu uma API para gráficos tridimensionais chamada Reality Lab. Duas versões desta biblioteca foram desenvolvidas e, então, em fevereiro de 1995, a Microsoft comprou a RenderMorphics para desenvolver um motor de gráficos 3D para o sistema operacional Windows 95.

O Direct3D inicialmente implementava dois modos: o retained mode e o immediate mode. O retained mode era uma API baseada na plataforma COM que acabou por não ser muito usado pelos programadores, eles demandavam um maior controle sobre o hardware. Houve apenas um jogo, Lego Island, que teve um bom desempenho nas vendas baseado no retained mode, então a Microsoft não o atualizou mais após o DirectX 3.0.

Modos de Exibição[editar | editar código-fonte]

O Direct3D implementa dois modos de exibição:

  • Tela cheia: Todo gráfico gerado é enviado diretamente para o dispositivo gráfico. O Direct3D captura automaticamente o Alt+Tab e ajusta o pixel format sem a intervenção do programador.
  • Modo em janela: O resultado é exibido dentro da área de uma janela. O Direct3D comunica-se com o GDI para gerar os gráficos no dispositivo de vídeo, dependendo do suporte do driver o desempenho pode ser o mesmo que em tela cheia.

Ferramentas Relacionadas[editar | editar código-fonte]

D3DX[editar | editar código-fonte]

Esta biblioteca acompanha o Direct3D e possui um conjunto de ferramentas matemáticas, manuseio das matrizes do sistema, compilação e montagem de shaders, etc. Também possui funções que possibilitam operações complexas sobre malhas poligonais. O D3DX é distribuído na forma de uma biblioteca de ligação dinâmica (DLL).

DXUT[editar | editar código-fonte]

DXUT é um framework construído sobre o Direct3D, ele foi projetado para ajudar o programador com tarefas mais básicas como criação de janelas, criação de um dispositivos, processamento das mensagens do Windows e eventos. É útil para o desenvolvimento de programas de menor porte como demonstrações e tutoriais.

Referências

  1. «DirectX Software Development Kit, October 2006». Microsoft. Arquivado do original em 2 de novembro de 2011 

Ver também[editar | editar código-fonte]

Ligações externas[editar | editar código-fonte]

Ícone de esboço Este artigo sobre computação gráfica é um esboço. Você pode ajudar a Wikipédia expandindo-o.