Apple have a graphics API. Microsoft have a graphics API. Sony have a graphics API. Nvidia have their own libraries and compilers and so do AMD.
Apple have a graphics API. Microsoft have a graphics API. Sony have a graphics API. Nvidia have their own libraries and compilers and so do AMD.
I'm a developer and I get paid to write hardware accelerated renderers and for the past two years I've been recommending Vulkan.. I'm exclusively using Linux these days for software development. Sometimes it's not about what you're targeting for deployment but the capabilities of the development machine. For example, I do like Xcode, but I can't use it for Vulkan development, even if my ultimate platform isn't macOS/Apple.
Apple dropped the ball on Vulkan and I do hope they support it eventually.
The software development culture on the games industry is to make use of the best way to squeeze the graphics performance of a given piece of hardware until the last drop of juice.
This is an industry that was born from rewriting their whole games for each type of gaming platform they wanted to sell games to, in Assembly. In many cases using a dumb hexdump editor connected over a serial cable.
Having an abstraction layer over all graphics API is a minor inconvenience that can be easily done in one month.
Plus it is something that is only written once for a specific engine.
> Having an abstraction layer over all graphics API is a minor inconvenience that can be easily done in one month.
Quite false. Take a look how long it takes major engines (like Unreal) to implement such abstraction. And how long it takes them to iron out bugs caused by underlying differences. And then try to claim it's a good thing they need to waste all this time. I don't really understand why you personally like this mess.
Apparently from the votes I sometimes get, others also share my life experience.
For anyone with experience in graphics programming, the time to triangle is just like doing hello world or playing fizz buzz.
The last time I set my feet inside of a game studio was more than a decade ago, but it started with an S not M, and I still have contacts in the industry.
You don't need to see it, it's a simple fact. Engines like Unreal, Cry/Lumberyard, Unity and etc. aren't FOSS. Plus they are commercial products. Ask their developers if current balkanized mess helps them delivering features for game developers faster. The answer is no, it takes them much longer.
So please stop claiming that it's not a problem. It only shows that you aren't sincere.
A commercially successful multi-platform game like skyrim, use at least 4 API's (DirectX, NVN, PSGL, and DirectX), but no OpenGL or Vulkan to be seen at all.
Anvil and Frostbite have no existing opengl driven software titles. And that's perfectly fine.
EDIT: Do you think debugging vulan/opengl is free? Software houses like valve have had to make their own tooling to debug and optimise for vulkan and opengl.
They added Vulkan support for Switch, but the actual main graphics API is NVN.
https://blogs.nvidia.com/blog/2016/10/20/nintendo-switch/
I bet most professional studios not using a games engine like Unreal or Unity already, will favor NVN.
Just like they did with OpenGL ES 1.0 + Cg vs Libgcm on the PS3.
93% of Android devices don't support Vulkan, PS, XBox, UWP don't support Vulkan and Nintendo Switch API is mainly NVN, in spite of having Vulkan support as well.
Also this is the list of "great" Vulkan games released thus far.
https://en.wikipedia.org/wiki/List_of_games_with_Vulkan_supp...
For the rest of your question, sorry NDA.
So, it means you are just speculating.
Some engines like idtech4 (mb/ma, lwo) and anvil (max) directly use the asset formats which are created by an artsists desired application, not collada or fbx.