🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Do game devleopers actually use dx11/12/Vulkan?

Started by
3 comments, last by Juliean 2 weeks, 1 day ago

Do AA/AAA game developers that use game engines like UE and Unity ever use dx11/12/Vulkan directly? Or do they just rely on the engine the whole time? I've read that large game developers often make patches to the source code of eg. Unreal or Unity. So from that it sounds like game developers make low level changes, which would include using dx11/12/Vulkan. Is that correct? If game developers so use dx11/12/Vulkan directly, how often is that, and how large of the game surface does it cover? What is it used for? Is it just used eg. to create a homescreen menu or something or more something more important? Obviously each studio is different but I's like to hear how common it is in your opinion. Thanks!

Tl;dr: do game developers that use UE/Unity ever touch dx11/12/Vulkan and if so for what and how much?

Advertisement

That's a huge brush you're painting with of all game developers.

Some do, some do not. Most begin with leveraging the game engines (like Unreal) but will fine tune and adjust details in their game. They'll often write it for the general case first using the engine's support of targeting all the platforms they want and then make changes as needed for each platform.

>They'll often write it for the general case first using the engine's support of targeting all the platforms they want and then make changes as needed for each platform.

So is it generally done for performance reasons? Or do you mean they will write the MVP of some feature within the engine and then switch to dx/Vulkan after they hit the limits of the engine? Is there a good example of something that would commonly be done in dx/Vulkan? (My guess is it depends on the game because otherwise presumably the engines would add the feature in, but I'm just trying to wrap my head around the concept with a concrete example).

One thing to keep in mind is that Unity/Unreal are cross-platform, and those available APIs are generally not. Thus, you will try to use abstractions over the APIs as much as possible, so you can build your game on PC, Linux, Android, iOS, etc… without having to code the same feature 3-4 times in different graphics APIs.

Advertisement