First post, by ratfink
- Rank
- Oldbie
I've never really understood directx compatibility so I'm wondering if someone can help.
Part of the reason I ask is that I want to understand which old rigs I actually need to ensure an optimal experience of older directx games.
Is this right:
- a directx version is a set of routines for graphics that is the middleman between the graphics card driver and the users software [in thi case, games].
- a game will be written to run in a particular version or versions of directx. That means it uses functions calls [or whatever] that a contained in that version or versions of directx.
- a graphics card driver will be written to work with particular versions of directx. That means it can "answer calls" to functions that should be available in the version or versions of directx that it's compatible with.
- successive directx versions usually include a lot of the same routines as earlier versions.
- some games at least check for the directx version installed.
This means that whatever a game is written for, you only "see" the parts that are implemented in the version of directx you have installed, and the version of directx that the graphics card driver is compatible with, eg:
- if you install [1] a dx8-compatible card, [2] directx9 and [3] a directx6 game, you'll only see the results of function calls that are in all three directx versions.
- in practice, some graphics card drivers insist on particular directx versions, same as some games.
If that's all correct, then the next thing I'd like to understand is the common ground between successive directx versions - I guess from 6 onwards:
- What gets dropped between successive versions that makes a difference to the ability of games written for earlier versions to display correctly on graphics cards written for later versions of directx?
- What gets added between successive versions that makes a difference to the ability of games written for later versions to display correctly on graphics cards written for earlier versions of directx?
Specific questions [but not the only ones] on my mind:
- will a gf4 ti display everything from dx6 to dx8.1 correctly?
- will an hd4850 display everything from dx9 correctly? and dx8.1?
- will a gtx560ti display everything from dx9 and dx10 correctly? and dx8.1?
