Comment on I had to install directx 9 to run gta 4 on windows 11
KoboldCoterie@pawb.social 2 months ago
GTA4 is 16 years old at this point. Why would you expect it to support DirectX12, which is 7 years newer than the game?
Comment on I had to install directx 9 to run gta 4 on windows 11
KoboldCoterie@pawb.social 2 months ago
GTA4 is 16 years old at this point. Why would you expect it to support DirectX12, which is 7 years newer than the game?
over_clox@lemmy.world 2 months ago
Why wouldn’t someone expect DirectX12 to not also support 11/10/9/8/7?
FeelzGoodMan420@eviltoast.org 2 months ago
Because it’s not backwards compatible like that?
over_clox@lemmy.world 2 months ago
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. 🤷♂️
FeelzGoodMan420@eviltoast.org 2 months ago
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.
computergeek125@lemmy.world 2 months ago
DirectX 12 was released in 2015 with Windows 10, so it’s unlikely to have been ported back to 8.1 and lower
over_clox@lemmy.world 2 months ago
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. 🤷♂️
computergeek125@lemmy.world 2 months ago
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. 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 Nurses) 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.