GPU API MkII
Introducción al proyecto
- Se incorpora la nueva API de GPU de SDL
- Es similar al proyecto MoonWorks y apunta a APIs modernas como Vulkan
- Ya se está usando en juegos como Samurai Gunn 2
Funciones principales y ventajas
- Funciones de cómputo: la API Refresh permite usar funciones de cómputo de forma sencilla
- Sistema de shaders: usa compilación offline y soporta varios formatos
- Seguridad de recursos: garantiza internamente la seguridad de los recursos sin exponer una API compleja al usuario
Sistema de shaders
- Usa el script
shaderbuild.py para compilar shaders offline
- Al generar módulos de shader, utiliza el formato IR de cada backend
- SDL en sí no envuelve compiladores de shaders
Estado del desarrollo
- Comenzó el soporte para Metal
- Soporte para generación de shaders mediante el port de FNA3D
- Está previsto agregar soporte para hardware instancing
Feedback de la comunidad
- Hay opiniones diversas sobre el enfoque de compilación offline de shaders
- La forma en que SDL_gpu maneja los ciclos ha sido bien valorada
- Se necesitan mejoras continuas para soportar diversos backends
Planes a futuro
- Redacción de comentarios de documentación al estilo SDL
- Refuerzo del soporte para Metal y D3D12
- Agregar programas de prueba y corregir errores
# Resumen de GN⁺
- La nueva API de GPU de SDL soporta APIs gráficas modernas y puede usarse en diversos juegos
- El sistema de shaders adopta compilación offline para optimizar el rendimiento
- Se sigue mejorando continuamente con base en el feedback de la comunidad, y se reforzará el soporte para Metal y D3D12
- Esta API es útil para desarrolladores de juegos y ofrece flexibilidad al soportar diversos backends
1 comentarios
Opiniones de Hacker News
SDL3 todavía está en estado de vista previa, pero la nueva API de GPU ya se fusionó en la rama principal
Sorprende que la API de GPU de SDL haya madurado tan rápido
Me da gusto haber podido contribuir en la parte de dx12
SDL es software de alta calidad, compila rápido en varias plataformas y siempre funciona
Soy muy fan de SDL
Tengo muchas ganas de ver cómo resulta todo esto
Aprender Vulkan fue divertido y útil, pero sentí que el avance era lento
Nunca he usado esta biblioteca, pero me gustaría ver ejemplos de capacidades de cómputo GPU multiplataforma
Me gustaría ver que Raylib obtuviera un backend de SDL GPU
Me pregunto si esto está relacionado con https://github.com/grimfang4/sdl-gpu