Microsoft DirectX es un grupo de tecnologías diseñado para convertir los equipos basados en Windows en plataformas ideales para la ejecución y visualización de aplicaciones con abundantes elementos multimedia como gráficos a todo color, vídeo, animación 3D y extenso contenido de audio. DirectX incluye actualizaciones de rendimiento y seguridad, junto con muchas y nuevas características en todas las tecnologías, a todo lo cual podrán tener acceso las aplicaciones que utilicen las API de DirectX.

Originalmente, los nombres de estas APIs todos comenzaron con Direct, como Direct3D, DirectDraw, DirectMusic , DirectPlay , DirectSound , y así sucesivamente. El nombre de DirectX fue acuñado como término abreviado para todas estas APIs (la X de pie en los nombres de las API específicas ) y pronto se convirtió en el nombre de la colección. Cuando Microsoft más tarde comenzó a desarrollar una consola de juegos, el X fue utilizado como la base del nombre de Xbox para indicar que la consola se basa en la tecnología DirectX. El X inicial se ha llevado hacia adelante en la denominación de las API diseñadas para la Xbox como XInput y la herramienta de creación de audio con múltiples plataformas (XACT) , mientras que el patrón de DirectX se ha continuado por las API de Windows, tales como Direct2D y DirectWrite .

Direct3D (LA APL de gráficos  3D en DirectX) es un programa muy utilizado para el transcurso de video juegos para para Microsoft Windows, Microsoft Xbox y Xbox 360 de Microsoft y también para otras herramientas de software para tareas donde tengan que ver imágenes y gráficos, como la ingeniería CAD/CAM.  Este programa lo veremos publicitado con los nombre de “DirectX” y “Direct•D” usando los dos por igual.

El kit de desarrollo de software de DirectX (SDK) está formado por las bibliotecas de tiempo de ejecución en forma binaria redistribuible, junto con la documentación adjunta y cabeceras para su uso en la codificación. Originalmente, los tiempos de ejecución sólo fueron instalados por los juegos o explícitamente por el usuario. Windows 95 no se lanzó con DirectX , pero DirectX se introdujo con Windows 95 OEM Service Release 2. Windows 98 y Windows NT 4.0 , fueron ya lanzados con DirectX, al igual que cada versión de Windows lanzada desde entonces. El SDK está disponible como una descarga gratuita. Mientras que los tiempos de ejecución están bajo licencia, software de código cerrado, se proporciona el código fuente de la mayor parte de los ejemplos del SDK. Comenzando con el lanzamiento de Windows 8 Developer Preview, DirectX SDK se ha integrado en el SDK de Windows.

Direct3D 9Ex , Direct3D 10 , Direct3D y 11 sólo están disponibles para Windows Vista y posteriores, ya que cada una de estas nuevas versiones se construyó a dependiendo del nuevo Modelo Windows Display Driver que se introdujo para Windows Vista. La nueva arquitectura de gráficos Vista / WDDM incluye un nuevo gestor de memoria de vídeo que soporta la virtualización de hardware de gráficos para diversas aplicaciones y servicios como el Administrador de ventanas de escritorio.

Esto puede que os haya sonado a chivo, ya que DirectX puede que sea un elemento más enfocado a usuarios medios-avanzados y su definición técnica puede sonar a chino a la mayoría de los usuarios. Por eso muchos direis pero que es realmente en un idioma que nos entendamos todos:

AL inicio los programadores que querían utilizar los diferentes elementos del quipo, como la tarjeta gráfica, la de sonido, etc. Lo tenían que programar directamente al Hardware. Esto les llevaba a necesitar un código nuevo y entonces una nueva versión para que funcionaran.

Cuando sacaron el Windows 95 todo cambio. El mismo sistema operativo es el que crea una capa entre los programas y el hardware. No dejando acceder de forma directa a los dispositivos y ofreciéndonos una interfaz común para todos. A pesar de que esto resuelve el tema de crear partes del programa para las diferentes tarjetas, trae otros problemas, como la pérdida de prestaciones. Codificar de forma directa un dispositivo siempre es más bueno aunque es más caro en términos de tiempo invertido y dificultad. Por esto los programadores de videojuegos deciden que es mejor crear utilidades para MS-DOS porque no tiene limitaciones.

Microsoft, consciente de esto, decide que esto debe de cambiar y decide solucionar este problema.

Cada parte del hardware del ordenador viene seguido con una serie de programas, llamados drivers. Estos controlan la entrada al dispositivo y ofrecen sus funciones al sistema operativo.

Se crea Direct X. Que sólo es un conjunto de librerías que trabajan unidos con los driver del ordenador. Así permite una funcionalidad estándar a los programadores sin importar el tipo de hardware que esté instalado. En algunas ocasiones se puede simular características, como la tarjeta gráfica usando el microprocesador.

De esta forma los programadores se centran en lo importante, crear aplicaciones y juegos espectaculares, y no en luchar contra las capas más internas del hardware.

DirectX consta de las siguientes API:

  • Direct3D: Con la aparición de las tarjetas gráficas aceleradoras 3D hacía falta que se pusiera algo de orden en sus características. Direct3D es capaz de reconocer que acelera y que no, llegando incluso a simularlo vía software. Este elemento de la librería se acabo implementando incluso en la consola Xbox.
  • Direct2D. Permite acelerar el renderizado de fuentes de letra, antialiasing, dibujos como líneas y curvas, es usado por ejemplo por Internet Explorer 9. Es muy importante en la aceleración de los sistemas operativos modernos.
  • Direct Graphics: para dibujar imágenes en dos dimensiones (planas), y para representar imágenes en tres dimensiones.
  • DirectInput: Para funcionar con ratones, teclados, joysticks. Después por XInput. De esta forma un juego se puede controlar con cualquier clase de joystick.
  • DirectPlay: Su función es ofrecer conectividad entre computadoras. Abstrae al programador de los problemas típicos de las redes. Permite conectar juegos vía Internet, redes locales, etc.
  • DirectSound: Se encarga de controlar todo lo relacionado con las tarjetas de sonido. No sólo permite la reproducción sino también la captura de sonido para su procesado. Los juegos con mundos en 3D con sonido envolvente hace más conveniente que exista un hardware que se encargue de estas tareas.
  • 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.
  • DirectCompute: Las tarjetas gráficas, debido a su cantidad de núcleos son ideales para realizar cierto tipo de cálculos, que no tienen nada que ver con su función como tarjeta gráfica. Sobre todo del tipo de renderizado 3D, algunos filtros de fotos, análisis estadístico. Aunque primero se lanzo en Direct X 11 también lo soporta la 10. En principio Microsoft sólo saco estas versiones para Windows Vista y 7.

 

Si no conoces que versión de DirectX tienes instalada en tu ordenador puedes conocerlo fácilmente de la siguiente manera:

Si poseemos una versión anterior a Windows 8, deberemos hacer clic en el botón de inicio y escribir " dxdiag " en el campo de búsqueda. Tras realizar la búsqueda y acceder a la opción mostrada se nos mostrará una ventana emergente donde deberemos hacer clic en la ficha Sistema y, a continuación, en Información del sistema, aquí podremos comprueba el número de versión de DirectX.

Si por el contrario, utilizas la versión Windows 8 o Windows 8.1, el procedimiento es idéntico con la única diferencia de que la búsqueda la deberemos realizar desde la búsqueda de la interfaz Metro.

 

Si no tienes DirectX instalado en tu ordenador o simplemente deseas descargar una nueva versión más actualizada, lo podrás hacer desde el siguiente enlace: Microsoft DirectX