render_backend_chooser.odin 828 B

123456789101112131415161718192021222324
  1. package karl2d
  2. when ODIN_OS == .Windows {
  3. DEFAULT_RENDER_BACKEND :: RENDER_BACKEND_INTERFACE_D3D11
  4. } else when ODIN_OS == .Linux || ODIN_OS == .Darwin {
  5. DEFAULT_RENDER_BACKEND :: RENDER_BACKEND_INTERFACE_GL
  6. } else when ODIN_OS == .JS {
  7. DEFAULT_RENDER_BACKEND :: RENDER_BACKEND_INTERFACE_WEBGL
  8. }
  9. CUSTOM_RENDER_BACKEND_STR :: #config(KARL2D_RENDER_BACKEND, "")
  10. when CUSTOM_RENDER_BACKEND_STR != "" {
  11. when CUSTOM_RENDER_BACKEND_STR == "gl" {
  12. RENDER_BACKEND :: RENDER_BACKEND_INTERFACE_GL
  13. } else when CUSTOM_RENDER_BACKEND_STR == "d3d11" {
  14. RENDER_BACKEND :: RENDER_BACKEND_INTERFACE_D3D11
  15. } else {
  16. #panic(CUSTOM_RENDER_BACKEND_STR + " is not a valid value for KARL2D_RENDER_BACKEND. Available backends are: gl, d3d11")
  17. RENDER_BACKEND :: DEFAULT_RENDER_BACKEND
  18. }
  19. } else {
  20. RENDER_BACKEND :: DEFAULT_RENDER_BACKEND
  21. }