Notebookcheck Logo

Un desarrollador de juegos construye un motor de juego de RV personalizado utilizando Python

Motor de juego de realidad virtual basado en Python (Fuente de la imagen: DaFluffyPotato)
Motor de juego de realidad virtual basado en Python (Fuente de la imagen: DaFluffyPotato)
Para la mayoría de los desarrolladores, utilizar Python para el desarrollo de juegos de realidad virtual no parece el uso más eficiente del lenguaje de programación. Sin embargo, el desarrollador DaFluffyPotato afrontó el reto y descubrió unos resultados apasionantes.

El desarrollador DaFluffyPotato no es ajeno al mundo del desarrollo de juegos de RV. Por desgracia, los motores de código abierto como Godot han demostrado tener limitaciones y ya no son la opción preferida de los desarrolladores. Con un próximo título en 3D que necesitaba una nueva pila de desarrollo, DaFluffyPotato encontró una combinación única de Python, GLFW, ModernGL y OpenAL para crear un shooter de RV sorprendentemente optimizado.

Parte de la magia que hace esto posible es un proyecto conocido como PyopenXR. PyopenXR proporciona enlaces de Python para OpenXR, un conjunto abierto de API destinadas a ayudar a los desarrolladores a desarrollar aplicaciones XR para varios auriculares VR y AR diferentes. Este estándar abierto sienta las bases para el resto de la pila tecnológica. Dado que openXR no renderiza gráficos y sólo sirve para comunicarse con los dispositivos XR, el desarrollador utiliza ModernGL, un modelo de renderizado de alto rendimiento para Python. Además, la pila utiliza GLFW para crear ventanas y manejar la entrada, ya que PyopenXR ya lo soporta. Desafortunadamente, mientras prueba esta configuración, DaFluffyPotato descubre una fuga de memoria procedente de PyopenXR, pero resuelve el problema después de encontrar el fallo y conseguir parchearlo.

En este punto, la pila está lista para ser utilizada para desarrollar un juego 3D. DaFluffyPotato crea un prototipo funcional con una completa configuración de activos compuesta por un par de armas, un personaje, la física del juego, un entorno de bloques inspirado en Minecraft y PNJ enemigos que aparecen en el mapa. Lo único que falta es el audio espacial; por suerte, OpenAL puede proporcionar fácilmente audio 3D y cuenta con un flujo de trabajo de implementación similar a ModernGL. Tras dedicar algo de tiempo a pulir el juego, los resultados son sorprendentemente buenos. El juego es rápido de arrancar, con un tiempo de arranque de alrededor de un par de segundos, que es mucho más rápido que la mayoría de los juegos de RV. Además, el juego no grava la CPU en la que se ejecuta. En general, se trata de un proyecto apasionante, y DaFluffyPotato ya tiene planes para futuras actualizaciones, que incluyen mejores PNJ enemigos y multijugador.

Please share our article, every link counts!
Mail Logo
> Análisis y pruebas de ordenadores portátiles y móviles teléfonos > Noticias > Archivo de noticias > Archivo de noticias 2024 12 > Un desarrollador de juegos construye un motor de juego de RV personalizado utilizando Python
Stephen Pereyra, 2024-12-10 (Update: 2024-12-10)