Anyone else had this issue? I mean why the game doesn’t support directx 12
Welcome to the largest gaming community on Lemmy! Discussion for all kinds of games. Video games, tabletop games, card games etc.
Video games, tabletop, or otherwise. Posts not related to games will be deleted.
This community is focused on games, of all kinds. Any news item or discussion should be related to gaming in some way.
No bigotry, hardline stance. Try not to get too heated when entering into a discussion or debate.
We are here to talk and discuss about one of our passions, not fight or be exposed to hate. Posts or responses that are hateful will be deleted to keep the atmosphere good. If repeatedly violated, not only will the comment be deleted but a ban will be handed out as well. We judge each case individually.
Try to keep it to 10% self-promotion / 90% other stuff in your post history.
This is to prevent people from posting for the sole purpose of promoting their own website or social media account.
This community is mostly for discussion and news. Remember to search for the thing you’re submitting before posting to see if it’s already been posted.
We want to keep the quality of posts high. Therefore, memes, funny videos, low-effort posts and reposts are not allowed. We prohibit giveaways because we cannot be sure that the person holding the giveaway will actually do what they promise.
Make sure to mark your stuff or it may be removed.
No one wants to be spoiled. Therefore, always mark spoilers. Similarly mark NSFW, in case anyone is browsing in a public space or at work.
Don’t share it here, there are other places to find it. Discussion of piracy is fine.
We don’t want us moderators or the admins of lemmy.world to get in trouble for linking to piracy. Therefore, any link to piracy will be removed. Discussion of it is of course allowed.
PM a mod to add your own
Video games
Generic
Help and suggestions
GTA4 is 16 years old at this point. Why would you expect it to support DirectX12, which is 7 years newer than the game?
Why would someone expect DirectX12 to not also support 11/10/9/8/7?
DirectX 12 was released in 2015 with Windows 10, so it’s unlikely to have been ported back to 8.1 and lower.
MS usually only does current+ with compatibility - so for example FF11 (DirectX 8.1 I think) still works (mostly) on Windows 11, but DX12 won’t work on W7
I wasn’t suggesting that I’d expect newer DirectX to work on older versions of Windows. I was suggesting that I would have expected newer DirectX standards to still be backwards compatible with older DirectX standards.
Sigh, I guess Satya Nadella decided to scrap backwards compatibility. Oh well, I switched to Linux after Windows 8 came out anyways. 🤷♂️
I mean… DX 9, 10, and 11 were all released prior to Nadella being CEO/chairman.
But in software, it’s very commonplace for library versions not to be backwards compatible without recompiling the software. This isn’t the same thing as being able to open a word doc last saved on a floppy disk in 1997 on Word 365 2024 version, this is about loading executable code. Even core libraries in Linux (like OpenSSL and ncurses) respect this same schema, and more strongly than MS.
Using OpenSSL as an example, RHEL 7 provides an interface to OpenSSL 1.0. But 1.1 is not available in the core OS, you’d have to install it separately. 1.1 was introduced to the core in RHEL 8, with a compatibility library on a separate package to support 1.0 packages that hadn’t been recompiled against 1.1 yet. In RHEL 9, the same was true of OpenSSL 3 - a compatibility library for 1.1, and 1.0 support fully dropped from core. So no matter which version you use, you still have to install the right library package. That library package will then also have to work on your version of libc - which is often reasonably wide, but it has it limits just the same.
Edit because I forgot a sentence in the last paragraph - like DirectX, VC++, and OpenGL, you have to match the version of ncurses, OpenSSL, etc exactly to the major (and often the minor) version or else the executable won’t load up and will generate a linking error. Even if you did mangle the binary code to link it, you’d still end up with data corruption or crashes because the library versions are too different to operate.
Because it’s not backwards compatible like that.
Guess not, but as far as I ever knew, M$ has been known to try to maintain backwards compatibility for longer than most users would even consider necessary.
XP supported DirectX 7/8/9
I would have figured that would have continued on with future versions of Windows, but I guess Satya Nadella decided to scrap backwards compatibility.
Oh well, all the more reason I switched to Linux as my main daily runner after Windows 8 came out. 🤷♂️
But it IS backwards compatible in the way you are describing. You can play a dx9 game on windows 11. So it is backwards compatible. What you cannot do (usually) is force a game built with dx9 features to use dx11/12 features. If the game wasn’t built with new API features (because it released before those features even existed) then you cannot expect it to be able to just “be dx12” all of a sudden.