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
editarEm 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
editarO 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
editarD3DX
editarEsta 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
editarDXUT é 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
editarLigações externas
editar- «Sítio oficial» (em inglês)
- «Documentação da biblioteca» (em inglês)