Open vladislav1nikov opened 1 year ago
These platforms are all currently reliant on having platform specific closed-source NDA-bound SDKs. Even if we do add support for these, we may need to make the integrations closed source and NDA-bound due to the restrictions on them.
We also need support for these platforms in our dependencies and the full Rust toolchain. I know Nintendo Switch has had a few homebrew efforts to support it, but the toolchain for it currently is only no_std
-only.
There are a few reports of people getting Rust and sometimes Bevy working on consoles, but nothing verifiable unless you also have signed the NDA, in which case you wouldn't have the permission to talk about it anyway...
Xbox seems the easiest
See also Console support in Godot.
https://godotengine.org/article/godot-consoles-all-you-need-know/
Based on this article, it's really not possible to support consoles in an open source engine at the moment.
And according to this article, UWP won't help us much with XBox support:
The only exception at some point was exporting to the UWP platform which could run on XBox, but it had limited access to the console internals and was eventually deprecated by Microsoft.
Perhaps in the future support for consoles should be made in a separate closed project and porting games to consoles will be paid? I think Bevy can take Rust GameDev to the next level, but without console support it will be harder to compete with engines like Unity and Unreal Engine. In addition, I think that the project needs some kind of monetization, because only thanks to donations it will be difficult to reach the level of, for example, Unity.
@vladislav1nikov honestly, the idea that it's impossible to support consoles in an open source is absurd. It's possible to create a company and keep this part closed sourced, there is zero downsides to this solution. A game engine will never really rise until consoles supported
Now that the Bevy Foundation exists, this is something that's worth entertaining, with the foundation holding the middleware license. If this license proves prohibitively expensive, we may need to figure out a way to fund it. The biggest open technical challenge, as far as I know, is that publishing typically requires using the console vendor's toolchains for compilation ,which may not bode well for Rust-based games.
It would be good to add support for game consoles like Sony PlayStation, XBox, Nintendo Switch