-
Notifications
You must be signed in to change notification settings - Fork 543
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make API fully backend-agnostic #1619
Comments
Thanks for filing a nicely detailed issue, way to go! |
Entry point names should be fixed by #1627 (except |
The only point left here, really, is GL initialization. |
So, I've been looking into possible methods of merging the OpenGL instantiation 1- We can just spawn our own new events loop and create a headless context with 2- We could somehow make the context based on the window we get when making the 3- According to this we can use the Desktop window, as long as we don't try to |
To expand on method 3: We can get the default window in X11 using We also need other stuff, like an Here is the hacks to glutin which I used for testing:https://gist.github.com/ZeGentzy/b89b13c108d7242b8a4608cac59f063b
(*) |
From the looks of it, Headless Contexts in macos don't even need a window. I guess we'd just have to wait for rust-windowing/glutin#1029 in the mac department. |
@zegentzy any update on this? |
@termhn I'm actively working on the changes to glutin and winit which I think will be necessary for merging the backends. Currently looking to add a way to create winit's event loops and windows from their (or a subset of their) raw parts. |
It's been nearly a month of dicking around in my spare time but I have finally put together rust-windowing/glutin#1058 and all the other PRs it depends on for linux. Soon the backends will be combined (on linux)! Insert evil laugh here. |
Let's consider this closed by #3506 🎉 |
This issue tracks progress in making API usage uniform accross backends.
As it currently stands, usage of gfx is still specific to the backend chosen, forcing cross-backend code to be feature gated – see examples/hal/quad:
To-do:
The text was updated successfully, but these errors were encountered: