Como recordará, DirectX 12 se lanzó junto con Windows 10 en 2015. Con su lanzamiento, DirectX 12 de Microsoft prometía ser una revolución: redujo la sobrecarga de la CPU y aumentó el rendimiento de la GPU. El momento de la DirectX 11 había llegado a su fin.
Pero, ¿Era tan sencillo como lanzar una mejor API para que los videojuegos dieran un salto de calidad? No, lamentablemente en computación nada es tan fácil. Vamos a empezar la casa sobre los cimientos que luego nos caen encima.
¿Qué es Microsoft DirectX? DirectX es un conjunto de API que se utilizan para administrar tareas relacionadas con entornos multimedia. Esto incluye la programación de juegos en plataformas basadas en Microsoft como Windows y Xbox. ¿Y qué es una API?
Una interfaz de programación de aplicaciones (API) permite que dos o más programas de computadora se comuniquen entre sí. Piense en ello como su teléfono inteligente. Si tu madre te envía un mensaje con la lista de la compra, tu teléfono recibirá esos datos y te los mostrará. Eso es básicamente una API.
¿Cuáles son las diferencias entre DirectX 11 y DirectX 12?
En pocas palabras, DirectX 12 es la última versión de DirectX. Una de las diferencias más notables entre los dos es cómo interactúan con su hardware. La mayoría de los juegos desarrollados con DirectX 11 solo usan entre dos y cuatro núcleos de CPU.
Uno de estos núcleos suele estar dedicado a decirle a la GPU qué hacer. Luego, el juego usa los núcleos restantes para manejar varias configuraciones de uso intensivo de la CPU, como las partículas del juego o la distancia de dibujo.
En ese sentido, DirectX 12 distribuye la carga de trabajo de la CPU entre varios núcleos y también permite que cada núcleo se comunique con la GPU al mismo tiempo.
DirectX 12 también viene con algunos extras. Estos incluyen computación asíncrona y objetos de estado de tubería (PSO). La computación asíncrona aumenta la utilización de la GPU al permitir que varias cargas de trabajo se ejecuten en paralelo. De esta forma, se aprovecha todo el potencial de la tarjeta gráfica.
Además de renderizar gráficos, la GPU es responsable de muchas otras tareas, como ejecutar algoritmos de aprendizaje automático. Con DirectX 11, la GPU solo puede realizar una de estas tareas a la vez y en un orden determinado. Cuando esto ocurre, el rendimiento se ve afectado porque no se utilizan todos los recursos de la GPU.
Para evitar este cuello de botella, DirectX 12 introdujo PSO., objetos que describen el estado de todo el canal gráfico. Los PSO son como una botella que contiene los diversos estados y componentes necesarios para crear una imagen.
Esto permite que la GPU procese previamente cada estado dependiente en lugar de tener que volver a calcular continuamente los estados en función de la canalización de gráficos actual. Esto reduce significativamente la sobrecarga de la CPU que se encuentra en DirectX 11 y mejora el rendimiento.
¿En qué se traduce esta diferencia? Según Microsoft, DirectX 12 reduce la sobrecarga de la CPU hasta en un 50 % y mejora el rendimiento de la GPU hasta en un 20 %. Aunque se trata de mejoras sustanciales, no significa que los resultados vayan a ser los mismos.
Por qué cambiar de DirectX 11 a DirectX 12 no es fácil
DirectX 11 se lanzó por primera vez para Windows Vista el 27 de octubre de 2009mientras que DirectX 12 se lanzó en 2015: esa es una brecha de seis años entre DirectX 11 y DirectX 12. Durante este tiempo, se han escrito miles de juegos sobre DirectX 11.
DirectX 11 es lo que se llama una API de alto nivel. En pocas palabras, las API de alto nivel son más fáciles de usar para los desarrolladores. El resultado son juegos estables, pulidos y jugables. Por otro lado, DirectX 12 es una API de bajo nivel y es una bestia diferente en comparación con DirectX 11.
A pesar de permite a los desarrolladores ajustar la optimización a un nivel granular, también requiere un amplio conocimiento para usar. Un juego desarrollado en DirectX 12 podría terminar con un rendimiento más bajo dependiendo del conocimiento que tenga el desarrollador de la API.
DirectX 12 incorpora algunas mejoras, pero todo depende de lo bien que el desarrollador sepa aplicarlo. Por eso, muchos desarrolladores prefieren usar APIs de alto nivel como DirectX 11 incluso ahora, en pleno 2022. Y luego pasar un traductor automático para pasarlo a DirectX 12.
Con información de Télam, Reuters y AP
Esta nota es parte de la red de Wepolis y fué publicada por Oliver Roberts el 2023-02-05 13:40:50 en:
Link a la nota original
Palabras clave:
#Diferencias #entre #DirectX #DirectX #cuál #mejor