4 ms·
Vulkan is only really relevant if you also want to publish your game on Linux or Android (targeting Linux is not as laughable as it was a couple of years ago be
by flohofwoe 4y ago
Vulkan is only really relevant if you also want to publish your game on Linux or Android (targeting Linux is not as laughable as it was a couple of years ago because of Steam Deck - of course there's also Proton, so a native Linux port isn't even needed in most cases).
Game consoles don't use Vulkan, Windows is better served with DX12 if you also publish on Xbox, macOS has Metal but macOS is also a fairly tiny market. All in all, Vulkan doesn't actually matter all that much outside of Linux and Android.
- xani_ 4y agoSteam Deck does.
- flohofwoe 4y ago...which is a regular Linux PC in a handheld format, not a 'traditional' game console (which have highly customized operating systems).
- xani_ 4y agoDistinction without difference. People buy it to use like console
- flohofwoe 4y agoThis thread is about Vulkan adoption though, which doesn't matter for regular users buying any piece of hardware. For developers the fact that the Steam Deck is "just a Linux PC" matters though.
- SirMittens 4y agoAfaik, - Xbox is basically using Windows Core + the xbox shell and runs the games in virtual machines. - The PS4/5 use FreeBSD with their shell and libraries on top. - The Steam Desk ships Linux and a shell on top of it (Steam Big Picture + Proton). modern consoles are just PCs using PC OSs with custom UIs that fit the control scheme. The only one that I could think of that's heavily modified is the Switch.
- flohofwoe 4y agoI only know the dev environment on the Xbox up to 360 and the Playstation up to PS3, but both have OS APIs that differ quite a bit from their 'desktop counterparts'. E.g. even though the PS has a FreeBSD kernel, this has little relevance for development on the console, it's just a shortcut for Sony, but not for game devs (for instance the 3D rendering, sound, input etc... APIs are completely custom). On the Xbox it was the other way around the kernel was written from scratch (AFAIK) but had some stripped down Win32 and DirectX APIs layered on top to simplify porting, but in any case the system APIs were different enough that one couldn't simply move much existing code based over without at least some adjustments. Some game dev APIs originating on the Xbox were even moved to Windows, to simplify porting Xbox games back to Windows.
- SirMittens 4y agoThat is very true for the the consoles before the Xbox One and PS4. However, since the release of those 2, seems like Microsoft and Sony use an off the shelf OS + their Shell and APIs (graphics, networking, matchmaking ...etc), which makes sense, especially for Microsoft, as they already develop a very capable x86 kernel, so why not use it. Afaik, with the introduction of the Xbox one, they used the Windows 8 Core as part of their "One OS" strategy to unify all of their devices on the same platform/OS (eg. consoles, mobile, AR/RV, PCs ...etc). The current version of the Xbox OS is based on Windows 11 [0]. Ofc, it's not exactly the same as Windows, but, it's largely based on it, at least as far as we know. [0]: https://en.wikipedia.org/wiki/Xbox_system_software https://en.wikipedia.org/wiki/Xbox_system_software EDIT: Added the wikipedia link. It's the only source I could access from my work's network, but it show's the OS progression since the the first generation Xbox
- EMM_386 4y agoX-Plane notaby put in a major effort to move the entire pipeline to Vulkan. And that platform is used in professional aerospace.
- steeleduncan 4y ago> Game consoles don't use Vulkan The Switch does. Windows may be better served with D3D12, but Vulkan is fine for almost all cases. If you choose Vulkan rather than D3D12 you also get Android, Switch, Steam Deck/Linux and if you aren't too bothered about performance, iOS/macOS via the MoltenVK translation layer. PC+Mobile is a pretty massive chunk of the gaming market to get with just one graphics backend.
- flohofwoe 4y agoI haven't worked on the Switch yet, but AFAIK Vulkan is just an option there, the actually 'native' API is something provided by NVIDIA called NVN (would be interesting to know how many games use NVN vs Vulkan). In that sense it's similar to older Nintendo consoles, OpenGL was offered as an option, but everybody used the lower level native API anyway.
- pjmlp 4y agoPC GPUs are developed with collaboration with Microsoft, based on DirectX features, and if users of Khronos APIs are lucky they might eventually get them as extensions. Steam Deck/Linux emulates DirectX and Windows, no need to bother with anything Linux native. On Switch there is support for OpenGL 4.6, Vulkan and NVN, and just like on PC, if you want the full deal, NVN is the way to go.