DirectX Versions: Difference between revisions
m (→DX9Ex) |
Mailmanmicky (talk | contribs) m (Converted templates to modern equivalents) |
||
Line 4: | Line 4: | ||
To test lower-quality DirectX levels on a more advanced graphics card, use the [[mat_dxlevel]] [[ConVar]]. Set it to 60, 70, 80, 81, 90, 95 or 98 to set the corresponding DirectX version; it is not possible to run at a higher level than the graphics hardware is capable of. | To test lower-quality DirectX levels on a more advanced graphics card, use the [[mat_dxlevel]] [[ConVar]]. Set it to 60, 70, 80, 81, 90, 95 or 98 to set the corresponding DirectX version; it is not possible to run at a higher level than the graphics hardware is capable of. | ||
{{ | {{ModernNote|Changing mat_dxlevel or -dxlevel won't change anything related to DirectX renderer, the game always runs on DirectX 9 regardless which dxlevel was set to.}} | ||
{{ | {{ModernNote|Source games and engine branches released by Valve since {{l4d|4}} no longer support DirectX versions below DirectX 9. The only modern Source engine branch that still supports older DirectX versions (down to DX8.0) is {{src13|4}}.}} | ||
{{ | {{ModernNote|Modern systems almost always run with DX9 or newer. Players running DX8 or older are [https://store.steampowered.com/hwsurvey/directx/ extremely rare] (according to Steam Survey). Make alternate assets if you want, but almost no one will see them.}} | ||
{{ | {{ModernBug|On some modern systems, when a {{src13|4}} game was run for the first time, the game may default to DirectX 8 materials.}} | ||
==DirectX Capabilities== | ==DirectX Capabilities== | ||
===DirectX 6=== | ===DirectX 6=== | ||
{{ | {{ModernConfirm|Check if it's still works on {{src07}}/{{src09}}, marked as unsupported but still works (tested on {{src04}} and {{src06}}, which works differently) according to dxsupport.cfg existed since {{src04}}.}} | ||
{{ | {{ModernWarning|Most likely no longer works since {{src13|4}}, trying to enable DX6 would sometimes reset it to DirectX 8.0 instead.}} | ||
DirectX 6-class graphics cards include the Nvidia TNT2 and Matrox G400. | DirectX 6-class graphics cards include the Nvidia TNT2 and Matrox G400. | ||
===DirectX 7=== | ===DirectX 7=== | ||
DirectX 7-class graphics cards include the Nvidia GeForce 256, 2, 2MX and 4MX cards and the ATI Radeon 7xxx series. | DirectX 7-class graphics cards include the Nvidia GeForce 256, 2, 2MX and 4MX cards and the ATI Radeon 7xxx series. | ||
{{ | {{ModernWarning|Most likely no longer works since {{src13|4}}, trying to enable DX7 would sometimes reset it to DirectX 8.0 instead.}} | ||
* Blob shadows | * Blob shadows | ||
Line 56: | Line 56: | ||
====DX9Ex==== | ====DX9Ex==== | ||
Referred to as "dxlevel 98". Made specifically for {{Xbox360}}Xbox 360. | Referred to as "dxlevel 98". Made specifically for {{Xbox360}}Xbox 360. | ||
{{ | {{ModernWarning|Doesn't work or doesn't do anything much in PC builds of any game. Only works for {{Xbox360}}Xbox 360, where it is required.}} | ||
* GPU [[Particle System Overview|Particle]] Physics | * GPU [[Particle System Overview|Particle]] Physics | ||
Line 68: | Line 68: | ||
====DX10==== | ====DX10==== | ||
Referred to as "dxlevel 100". | Referred to as "dxlevel 100". | ||
{{ | {{ModernNote|This version isn't enabled by default and doesn't do anything outside of {{sfm}}'''Source Filmmaker''', where it is required. This will NOT enable DirectX 10 at all unless the engine is modified.}} | ||
===DirectX 11 {{stratabranch|only}} === | ===DirectX 11 {{stratabranch|only}} === |
Revision as of 15:19, 3 April 2023
This is a description of what each version of DirectX is capable of, for reference when creating fallback materials. Under each heading are features not available in previous versions of DirectX.
To test lower-quality DirectX levels on a more advanced graphics card, use the mat_dxlevel ConVar. Set it to 60, 70, 80, 81, 90, 95 or 98 to set the corresponding DirectX version; it is not possible to run at a higher level than the graphics hardware is capable of.
Template:ModernNote Template:ModernNote Template:ModernNote Template:ModernBug
DirectX Capabilities
DirectX 6






Template:ModernWarning DirectX 6-class graphics cards include the Nvidia TNT2 and Matrox G400.
DirectX 7
DirectX 7-class graphics cards include the Nvidia GeForce 256, 2, 2MX and 4MX cards and the ATI Radeon 7xxx series. Template:ModernWarning
- Blob shadows
- Displacement map texture blending
DirectX 8.0
DirectX 8-class graphics cards include the Nvidia GeForce4 Ti and most of the GeForce FX 5x00 series (while technically DirectX 9 cards, the latter suffer from major performance problems with the DX9 rendering path).
- Refractions with the use of a du/dv map
- Dynamic shadows
- Directional lighting on world brushes using normal maps
- Cube-mapped specular effects
- Cube-mapped water
- Low-quality reflective water (used sparingly)
DirectX 8.1
DirectX 8.1-class graphics cards include the Nvidia GeForce FX 5800 and 5900 and the ATI RADEON 8500/9100 and 9000/9200 cards.
- Soft edge dynamic shadows
DirectX 9 (Shader Model 2)
DirectX 9-class graphics cards include the Nvidia GeForce 6600 and 6800 series and the ATI RADEON 9500/9600, 9700/9800, X300/X600 and X800 cards.
- Refractions with the use of a bump-map
- High-quality reflective water (used frequently)
- Softer edge dynamic shadows
- Normal-mapped lighting on models
- Improved-quality specular effects
Since Source 2006:
- High dynamic range rendering
- Phong shading
DX9 Shader Model 3 (in all games since
)
Referred to as "DirectX 9.0+" and "dxlevel 95".
- Lightwarp support
DX9Ex
Referred to as "dxlevel 98". Made specifically for Xbox 360.
Template:ModernWarning
- GPU Particle Physics
Differences of dxlevel 95 (DX9 SM 3.0) and 98 (DX9Ex) (according to "dxsupport.cfg"
on Half-Life 2):
- Default resolution from 1024x768 (dxlevel 95) to 640x480 (dxlevel 98).
"mat_forceaniso" "1"
(dxlevel 95) >"8"
(dxlevel 98)"mat_forcehardwaresync" "1"
(dxlevel 95) >"0"
(dxlevel 98)"r_waterforcereflectentities" "0"
(dxlevel 95) >"1"
(dxlevel 98)
DX10
Referred to as "dxlevel 100". Template:ModernNote
DirectX 11 (only in
)
Referred to as "dxlevel 11". Template:ModernNote
Sample screenshots
Canals
These screenshots demonstrate displacement map texture blending, directional lightmaps and cubemapped then reflective water.
DirectX 6.0 | ![]() |
DirectX 7.0 | ![]() |
DirectX 8.0 | ![]() |
DirectX 8.1 | ![]() |
DirectX 9.0+ | ![]() |
Dropship
These screenshots show shadow quality at different rendering levels, ranging from none to soft, dynamic shadows.
DirectX 6.0 | ![]() |
DirectX 7.0 | ![]() |
DirectX 8.0 | ![]() |
DirectX 8.1 | ![]() |
DirectX 9.0+ | ![]() |
Storm drain
These screenshots show directional lightmaps and cube-mapped specular effects.
DirectX 6.0 | ![]() |
DirectX 7.0 | ![]() |
DirectX 8.0 | ![]() |
DirectX 8.1 | ![]() |
DirectX 9.0+ | ![]() |
Zombie
These screenshots demonstrate the use of normal-mapping on models. The final shot has full, normal-mapped lighting.
DirectX 6.0 | ![]() |
DirectX 7.0 | ![]() |
DirectX 8.0 | ![]() |
DirectX 8.1 | ![]() |
DirectX 9.0+ | ![]() |