Dagon 2.0 will use SDL3, and the renderer will be ported to SDL3 GPU, initially targeting the Vulkan backend. It will also use glslang and spirv-cross for shader compilation and introspection.
Rationale:
- SDL development is focused on SDL3, and transition is highly desirable to ensure Dagon's future-proofing;
- When using SDL3, there's no particular reason not to use its built-in graphics API. It's complete and stable for production use, offers better performance than OpenGL, is much simpler than pure Vulkan, and arguably has a nicer design than other similar abstractions (like WebGPU);
- SDL3 includes cross-platform dialog API, graphics tablet API and system tray API which are very useful for writing tools.
This transition will likely keep the basic API mostly backward-compatible, but will completely change the renderer customization mechanism.
The early stage port is available here: https://github.com/gecko0307/dagon2
Dagon 2.0 will use SDL3, and the renderer will be ported to SDL3 GPU, initially targeting the Vulkan backend. It will also use glslang and spirv-cross for shader compilation and introspection.
Rationale:
This transition will likely keep the basic API mostly backward-compatible, but will completely change the renderer customization mechanism.
The early stage port is available here: https://github.com/gecko0307/dagon2