thats an industry standard. it doesn't mean it's the best one.
on windows and ms consoles only, maybe. again it's doesn't mean it's the best. PCGamer had a press conference with PC developers (Chris Roberts, ...) some months ago - and they all agreed DirectX being kind of bad. It get's the best driver support from Nvidia and AMD. And since no capable PC graphic chips manifacture besides them left in the gaming relevant space...
visual studio? yeah, it's actually pretty normal. there are many 3rd-party plugins that makes it pretty good. i don't use it myself through
what else?
most indies are using some 3rd-party tools/engines like unity, it seems. and the one developing "from scratch" are using stuff like mono/monogame (i personally dislike it) or trying opengl directly. mostly of the fact to get it run on ios/android (opengl es)
besides: opengl + openal combination can compete with directx pretty easily. there are many pretty good multiplatfrom libraries. SDL for example.
Carmack wasn't in charge on linux/osx versions. He wrote his code in a pretty portable way. Timothee Besset was the one at id software doing the porting. He left before Rage launched. Bethesda is a windows-only company, so they didn't care for OSX/Linux support.
Carmacks preferred OpenGL since Quake 1. At that time it was the best API available, Direct X did just suck at the time. However Microsoft learned, DX got better and MS actively sabotaged the OpenGL-development. I'm not saying MS is actually responsible for the stagnation of the API - where there many other mistakes made.
Right now it's pretty good actually. Carmacks mentioned DirectX being better some years ago - well - right now there are pretty on par. OpenGL >4 finally managed to sort all that old deprecated stuff out of the api, like microsoft did years ago...
i really don't care who wins. it would be nice for me to have more games on linux available. same goes for osx. i'm not using windows on my machines at home, as i find the os horrible.
it would be horrible. "unknown" blobs don't belong in a "web standard".
it would be just like microsofts "open" docx/xmlx document "standards". study their techpapers and try to fully implement it. besides of the format being quite complicated (=horrible), there are too many section like "there is a binary information going here", but it isn't explained that it is exactly