DirectX vs Vulkan: el enfrentamiento entre las API de gráficos modernas

DirectX de Microsoft y Vulkan de Khronos Group son dos API de gráficos muy utilizadas y preferidas por muchos desarrolladores de juegos en la actualidad. Básicamente, Vulkan y DirectX garantizan una asignación eficiente de los recursos de hardware (CPU y GPU) para permitir que los juegos alcancen altas velocidades de cuadros y tiempos de renderización rápidos. Pero, ¿cómo se comparan estas dos API de gráficos, Vulkan y DirectX? ¿Cuál es superior para los juegos? Vamos a analizarlo.

Vulkan vs DirectX: evolución y desarrollo

Primero, profundicemos en la evolución y la historia para resaltar la importancia de las API gráficas como DirectX y Vulkan.

Los juegos de PC empezaron con DirectX

Inicialmente, un equipo de Microsoft desarrolló DirectX para impulsar la adopción entre los desarrolladores de juegos, asegurando que las PC basadas en Windows tuvieran juegos para los usuarios. Antes de DirectX, los desarrolladores preferían crear juegos para DOS y no tenían planes de lanzar nuevos títulos para Windows.

Esto ocurrió aproximadamente en la época en que Windows 95 estaba a punto de lanzarse. Además de los juegos de DOS, los juegos de consola también estaban ganando terreno. DirectX 1.0, conocido como Windows Game SDK, se lanzó en septiembre de 1995.

Básicamente se llama DirectX porque fue diseñado para eludir el sistema operativo, dejar a Windows de lado, sacarlo de la memoria, deshacerse de toda la basura que compite con los juegos por los recursos y simplemente dejar que los juegos se ejecuten.

Alex St John, el cerebro detrás de DirectX

Alex St. John, miembro del equipo de DirectX, compartió en una entrevista que Microsoft tuvo que persuadir sin descanso a los desarrolladores de juegos para que adoptaran DirectX. Atendieron las preocupaciones de los desarrolladores y utilizaron sus comentarios para mejorar los juegos en Windows, lo que fomentó la creación de nuevos juegos para el sistema operativo que utilizan millones de personas.

Imagen: Microsoft

Durante el inicio de DirectX, hubo estrategias de marketing audaces destinadas a atraer a la industria de los videojuegos para que adoptara la API y fomentara el desarrollo de juegos para PC con Windows.

Lea también:

DirectX permitió a los desarrolladores de juegos aprovechar el hardware de PC de manera eficiente sin interferencias del sistema operativo. Componentes como DirectSound para el procesamiento de audio, DirectPlay para las comunicaciones dentro del juego y DirectDraw para la representación de gráficos formaban parte de DirectX 1.0, inicialmente conocido como "SDK del juego" o "Proyecto Manhattan.”En la actualidad, DirectX es un conjunto completo de API que se utilizan ampliamente en muchos juegos. Si bien DirectX 12 es la versión más reciente, muchos juegos aún utilizan DirectX 11.

Vulkan fue creado con objetivos similares pero implementado de manera diferente

Vulkan tiene sus raíces en la API Mantle de AMD, que se desarrolló en colaboración con DICE. Inicialmente utilizada en juegos como Sniper Elite III, Battlefield 4 y Civilization: Beyond Earth, Mantle tenía como objetivo ofrecerRendimiento superior en comparación con DirectX 11, especialmente en escenarios de cuellos de botella en la CPU. A pesar de sus ventajas, Mantle enfrentó una adopción limitada.

Finalmente, AMD aportó la API Mantle al Grupo Khronos, que la utilizó como base para desarrollar Vulkan. Vulkan se presentó oficialmente como una nueva API gráfica en la GDC 2015. Hoy, Vulkan se ha convertido en un estándar abierto importante junto con DirectX 11 y DirectX 12, ampliamente utilizado en muchos juegos.

Imagen: Khronos Grupo

Una distinción notable entre Vulkan y DirectX es que Vulkan es unAPI multiplataforma, compatible con entornos de escritorio y móviles. El diseño de Vulkan pone énfasis en minimizar la "sobrecarga del controlador", lo que puede mejorar significativamente el rendimiento, una característica que también está integrada en la última implementación de DirectX 12.

En los últimos cinco años, tanto DirectX como Vulkan han experimentado mejoras sustanciales, cada una con sus propias ventajas. Analicemos en profundidad su rendimiento y comparemos DirectX con Vulkan en varios juegos contemporáneos.

DirectX vs Vulkan: ventajas comparativas

Vulkan es reconocido por su uso eficiente de los recursos de hardware, logrando un uso equilibrado de CPU, GPU y RAM en comparación con DirectX 12. Al ser una API de nivel inferior y de código abierto, Vulkan admitemultiplataformadesarrollo, lo que permite a los desarrolladores optimizar los lanzamientos en plataformas móviles y de PC. Sin embargo, sucomplejidadpuede plantear desafíos, aumentando potencialmente el tiempo de desarrollo.

Para los desarrolladores, la naturaleza de código abierto de Vulkan y sus capacidades multiplataforma lo hacen sumamente atractivo. Hay abundante material educativo disponible, lo que lo hace accesible para quienes se inician en el desarrollo de gráficos y juegos. Algunos desarrolladores consideran que Vulkan es más fácil y claro de usar, con una documentación superior en comparación con DirectX. En definitiva, algunos juegos ofrecen ambas API para que los usuarios elijan, atendiendo a diferentes configuraciones y preferencias del sistema.

De hecho, DirectX se utiliza principalmente para PC con Windows y consolas Xbox, mientras que Vulkan es compatible con una gama más amplia de plataformas, entre las que se incluyen Linux, Windows y varios sistemas operativos móviles. Vulkan también es compatible con Nintendo Switch, que utiliza una GPU Nvidia Tegra capaz de ejecutar Vulkan.

Lea también:

En cuanto a optimizaciones y API, las consolas de juegos como PlayStation están diseñadas específicamente para juegos, lo que permite a los desarrolladores lograr resultados muy directos y eficientes.APIcon una sobrecarga mínima. Esta especialización suele dar como resultado un rendimiento superior en comparación con las PC, donde las API como DirectX y Vulkan deben adaptarse a una gama más amplia de configuraciones de hardware y entornos de software.

DirectX vs Vulkan: Rendimiento

Al considerar DirectX o Vulkan para el rendimiento de los juegos, la elección puede variar según el juego específico y la configuración de tu hardware. Realicé pruebas en dos juegos populares para comparar su rendimiento usando mi computadora portátil para juegos Acer Nitro V, equipada con una CPU Intel Core i5-13420H, una GPU Nvidia GeForce RTX 4050 y 16 GB de memoria DDR5.

Es importante tener en cuenta que los resultados de rendimiento pueden variar según los componentes de tu PC. Algunos juegos pueden funcionar mejor con DirectX, mientras que otros pueden beneficiarse más de las optimizaciones de Vulkan. Lamentablemente, tuve problemas al probar DirectX 11 frente a Vulkan en Baldur's Gate 3, ya que el juego seguía fallando. Una vez que se resuelva, actualizaré esta sección con los resultados de las pruebas comparativas para esa comparación.

Red Dead Redemption 2: DirectX 12 frente a Vulkan

En mis pruebas con Red Dead Redemption 2, Vulkanmostró mejores FPS mínimosy, en general, mantuvo un rango de FPS más consistente en comparación con DirectX 12. Vulkan también proporcionó una experiencia más fluida con un promedio de FPS más alto en varias escenas. Por otro lado, DirectX 12 mostró un FPS máximo más alto, pero tuvo problemas con un FPS mínimo más bajo, lo que resultó en una experiencia ligeramente menos fluida en general.

Vale la pena señalar que algunos usuarios han informado de problemas de intermitencia con Vulkan, mientras que otros han encontrado un rendimiento inconsistente con DirectX. Para cambiar entre Vulkan y DirectX 12 en Red Dead Redemption 2, dirígete a la configuración de gráficos del juego y selecciona la configuración de gráficos avanzada. Desde allí, puedes alternar entre Vulkan y DirectX 12 y ejecutar el benchmark del juego para comparar los números de FPS. Optar por la API de gráficos que ofrece un mejor promedio de FPS en tu configuración es probablemente la mejor opción para un rendimiento óptimo en el juego.

Lea también:

Path of Exile: comparación entre DirectX 11, DirectX 12 y Vulkan

En mis pruebas con Path of Exile en mi portátil para juegos Acer RTX 4050, Vulkan resultó ser la opción óptima entre las tres API de gráficos disponibles. Vulkan proporcionó constantemente alrededor de 80 FPS en la mayoría de los escenarios, ofreciendo un rendimiento de juego fluido. DirectX 11, a pesar de ser una API más antigua (lanzada en 2009), brindó mejores números de rendimiento en algunos casos, pero no igualó la estabilidad general de Vulkan y la consistencia de FPS. DirectX 12, por otro lado, arrojó resultados insatisfactorios con FPS por debajo de 60 en ciertos escenarios.

Para los jugadores de Path of Exile, elegirVulcanoDe las opciones de API de gráficos disponibles parece proporcionar laMejor equilibriode rendimiento y estabilidad en configuraciones de hardware similares.

DirectX vs Vulkan: ¿Qué opción deberías elegir?

Según las especificaciones de tu sistema, una de estas dos API puede ofrecer un rendimiento superior. La optimización del juego también desempeña un papel crucial. Para determinar qué opción es más adecuada para tus necesidades, realiza pruebas de rendimiento en el juego y compara los FPS.

Por lo general, DirectX ofrece una mayor estabilidad, aunque no siempre es así. Vulkan suele ser elogiado por su enfoque equilibrado con una sobrecarga mínima. Los usuarios de GPU AMD pueden beneficiarse especialmente de Vulkan, posiblemente debido a sus orígenes en Mantle de AMD.

En última instancia, los jugadores deberían priorizar la API que ofrezca un mejor rendimiento en su sistema. ¿Qué opinas sobre DirectX versus Vulkan? ¡Comparte tu opinión en los comentarios a continuación!

Related Posts