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

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

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

D3DX editar

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

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

Ligações externas editar

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