RadixEngine
RadixEngine copied to clipboard
Abstract access to windowing/input library
Currently the engine uses SDL2. Depending on the platform, other similar libraries like GLFW3 might support more up-to-date features like better controller input, multi-screen handling, clipboard interaction, graphics context creation (be it OpenGL/Vulkan) or newer/better display server backends. Additionally, having raw SDL code sprinkled everywhere makes it harder to maintain if there is an API change/breakage between versions.
This issue still require attention?
@lavishm58 Yes. We still don't have an abstraction for windowing and input.
@hhirsch Glad to hear that, it would be overwhelming if you provide some headstart links and a quick guide about specific requirements,then I can inform you about the time i will take to complete the issue?
@lavishm58 This is my own interpretation of what this issue means but look at for example
- https://github.com/GlPortal/RadixEngine/blob/master/source/util/sdl/Fps.cpp
- https://github.com/GlPortal/RadixEngine/blob/master/source/SoundManager.cpp
- https://github.com/GlPortal/RadixEngine/blob/51839e7495c84162e5e1c94b6c995efa6242f7aa/source/Window.cpp
- https://github.com/GlPortal/RadixEngine/blob/f7b7a0d32a8487a578c3e42b135ae0d4f91744b3/source/PlayerTask.cpp
See how these directly depend on SDL without an abstraction? @ElementW Will probably elaborate on the topic. Also consider joining our irc and gitter.
@lavishm58 As for time you spend on the issue. My suggestion is to split it up so your branch does not diverge from master, too much. Also read http://contribute.glportal.de
@lavishm58 You probably want to clone GlPortal. This way you will have a playground to test your radix changes immediately.
Thanks for providing links,sorry for the late reply and would be helpful if @ElementW could elaborate?
@lavishm58 Hmm. Dorian is not available for feedback atm. I think from these files you should see what is wrong. Aim for a thin layer of abstraction at first and we can get more elaborate in future iterations.