DirectX
DirectX es una colección de APIs creadas y recreadas para facilitar las complejas tareas relacionadas con multimedia, especialmenteprogramación de juegos y vídeo en la plataforma Microsoft Windows.
DirectX consta de los siguientes APIs:
- Direct3D: utilizado para el procesado y la programación de gráficos en tres dimensiones (una de las características más usadas de DirectX).
- Direct Graphics: para dibujar imágenes en dos dimensiones (planas), y para representación de imágenes en tres dimensiones.
- DirectInput: utilizado para procesar datos del teclado, mouse, joystick y otros controles para juegos.
- DirectPlay: para comunicaciones en red.
- DirectSound: para la reproducción y grabación de sonidos de ondas.
- DirectMusic: para la reproducción de pistas musicales compuestas con DirectMusic Producer.
- DirectShow: para reproducir audio y vídeo con transparencia de red.
- DirectSetup: para la instalación de componentes DirectX.
A pesar de ser desarrollado exclusivamente para la plataforma Windows, una implementación de su API se encuentra en progreso para sistemas Unix (en particular Linux) y X Window System conocida como Cedega, desarrollada por la empresa de software Transgaming y orientada a la ejecución de juegos desarrollados para Windows bajo sistemas Unix.
Historial de Lanzamientos
Versión de DirectX | Número de versión | Sistema Operativo | Fecha de Lanzamiento |
---|---|---|---|
DirectX 5.2 | 4.05.01.1998 | Windows 98 | 5 de mayo 1998 |
DirectX 6.0 | 4.06.00.0318 | Windows CE para la Dreamcast | 7 de agosto 1998 |
DirectX 8.0a | 4.08.00.0400 (RC14) + parches de instalación | Última versión para Windows 95 | 7 de noviembre 2000 |
DirectX 8.1 | 4.08.01.0810 4.08.01.0881 (RC7) | Windows XP | 12 de noviembre 2001 |
DirectX 9.0 | 4.09.00.0900 | Windows Server 2003 | 19 de diciembre 2002 |
DirectX 9.0a | 4.09.00.0901 | 26 de marzo 2003 | |
DirectX 9.0b | 4.09.00.0902 (RC2) | 13 de agosto 2003 | |
DirectX 9.0c | 4.09.00.0904 (RC0) | Windows XP SP2, Windows Server 2003 SP1, y Xbox 360. Última versión exclusiva para 32-bit. | 13 de diciembre 2004 |
DirectX 9.0c | 4.09.00.0904 | Compatible con todos los Sistemas Windows que soporten 9.0c (RC0)Primera versión en incluir D3DX DLLs | 9 de diciembre 2005 |
DirectX 9.0c - actualizaciones bimensuales | 4.09.00.0904 | Desde agosto del 2005 hasta el presente. Última versión: marzo 2009 | |
DirectX 10 | 6.00.6000.16386 | Exclusivo de Windows Vista | 30 de noviembre 2006 |
6.00.6001.18000 | Service Pack 1 para Windows Vista, Windows Server 2008 incluye Direct3D 10.1 | 4 de febrero, 2008 | |
DirectX 11 | 6.01.7000.7000 | Windows Vista y Windows 7 | Agosto de 2009 |
DirectX 10
Como cambio mayor en la API DirectX, DirectX 10 es lanzado junto a Windows Vista y es exclusivo de este sistema; versiones anteriores de Windows no pueden lanzar aplicaciones exclusivas de DirectX 10 de manera oficial.1
Muchas partes de la API fueron sacadas en el último DirectX SDK y se mantienen únicamente con motivos de compatibilidad: DirectInput fue retirado en favor de XInput, DirectSound fue retirado por XACT con la consecuente pérdida de soporte de aceleración de hardware, debido a nuevas características en la pila de audio de Windows Vista, la cual renderiza el audio directamente al procesador.
Para mantener una compatibilidad hacia atrás, DirectX de Windows Vista contiene muchas versiones de Direct3D:2
- Direct3D 9: emula el comportamiento de Direct3D 9 como lo era en Windows XP. Las ventajas del nuevo Windows Display Driver Model de Vista no son mostradas a la aplicación si están instalados controladores WDDM.
- Direct3D 9Ex (conocido internamente como 9.0L durante el desarrollo de Windows Vista, con la L refiriéndose a Longhorn, el nombre clave para Windows Vista): permite acceso total a las nuevas capacidades de WDDM (si están instalados controladores compatibles con WDDM) a la vez que se mantiene compatibilidad con aplicaciones Direct3D existentes. La interfaz de usuario Windows Aero trabaja en D3D 9Ex.
- Direct3D 10: Diseñada alrededor del nuevo modelo de controlador de Windows Vista y proporcionando muchas mejoras a las capacidades y flexibilidad de renderizado, incluyendo elShader Model 4.
Direct3D 10.1 es una actualización incremental de Direct3D 10, la cual se incluye y requiere de Windows Vista Service Pack 1. Esta release sólo determina algunos estándares de calidad para los fabricantes de tarjetas gráficas, a la vez que proporciona a desarrolladores más control en la calidad de la imagen.3 También incluye una serie de nuevos requerimientos mínimos al hardware, como Shader Model 4.1 y operaciones de punto flotante de 32-bit. Direct3D 10.1 soporta completamente el hardware Direct3D 10, pero para acceder a las nuevas características se necesita de una tarjeta nueva.
Sin embargo hay que tener en consideración, que a pesar de que Microsoft trato de mantener en DirectX 10 cierta compatibilidad hacia atras, hay programas (especialmente videojuegoscreados previos a la aparición de DirectX 10) que requieren tener instalado algunos de los archivos de DirectX 9; pero los cuales no fueron considerados que estuvieran presentes en la versión DirectX 10. Debido a ello igualmente a los usuarios de Windows Vista, se les sugiere también haber instalado la última versión de DirectX 9.0c (actualizaciones bimensuales); con el objetivo de mejorar la compatibilidad entre Windows Vista y los programas que requieran DirectX 9 (ambas versiones de DirectX son compatibles, ya que solo seran instalados los archivos que no estan presentes en la versión posterior de DirectX; con lo cual DirectX 10 aún permanecera como la versión instalada en Windows Vista).
DirectX 11 [editar]
A pesar de que DirectX 10 es relativamente nuevo, debido a la cantidad de novedades que están apareciendo últimamente en el mundo de las tarjetas gráficas, Microsoft ya está desarrollando DirectX 11.
Microsoft esta pensando en varias adiciones para las nuevas API como:
- Soporte completo (incluidas todos las características del DX11) en Windows Vista así como para versiones futuras de Windows.
- Compatibilidad con hardware DX10 y 10.1 así como soporte para el nuevo hardware DX11.
- Nueva tecnología de computación de shaders para permitir que la GPU no sea solamente usada para gráficos 3D y así puedan los desarrolladores tomar ventaja de las tarjetas gráficas como procesadores en paralelo.
- Manejo de recursos multi-tarea que permitirán a los juegos tomar ventaja de los procesadores multi-nucleo.