Direct3D
Este artigo apresenta apenas uma fonte. (Fevereiro de 2021) |
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
- ↑ «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]- Sítio oficial (em inglês)
- «Documentação da biblioteca» (em inglês)