DirectX Versions/Screenshots: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(→‎{{hl2}} Train Station (fake volumetric lighting): - adding 20th anniversary screenshots.)
 
(3 intermediate revisions by the same user not shown)
Line 68: Line 68:


==={{hl2}} <span id="Train Station">Train Station (fake volumetric lighting)</span>===
==={{hl2}} <span id="Train Station">Train Station (fake volumetric lighting)</span>===
These screenshots shows the differences between DirectX 8 and 9 on the fake [[volumetric lighting]]. While the DirectX 9.0+ volumetric lighting on Old Engine was slightly less visible compared to DX8 counterpart, the volumetric lighting on New Engine DX9 was even less visible (or nearly invisible) compared to Old Engine's DX9, probably due to a bug (or changes to the lighting/shaders) on Source 2007 and later.{{Cite|1}}{{Cite|2}} This has been fixed in {{hl2u|1}}.
These screenshots shows the differences between DirectX 8 and 9 on the fake [[volumetric lighting]]. While the DirectX 9.0+ volumetric lighting on Old Engine was slightly less visible compared to DX8 counterpart, the volumetric lighting on New Engine DX9 was even less visible (or nearly invisible) compared to Old Engine's DX9, probably due to a bug (or changes to the lighting/shaders) on Source 2007 and later.{{Cite|1}}{{Cite|2}} While this has been fixed in {{hl2u|1}}, Half-Life 2 20th Anniversary Update tries to make volumetric lighting prop brighter in DX9 but this cause DX8 version to appear too bright.


{| class=standard-table
{| class=wikitable
! DirectX levels !! Old Engine !! New Engine ({{src13|name}}) !! 20th Anniversary
! DirectX levels !! Old Engine !! New Engine ({{src13|name}}) !! 20th Anniversary
|-
|-
| DirectX 6.0 || [[File:Trainstation volumetric DX60 Source 2006.jpg|Old Engine - DirectX 6.0 ({{code|dxlevel 60}})|384px]] || Unsupported since {{src07|name}}  
| DirectX 6.0 || [[File:Trainstation volumetric DX60 Source 2006.jpg|Old Engine - DirectX 6.0 ({{code|dxlevel 60}})|288px]] || Unsupported since {{src07|name}} || Unsupported since {{src07|name}}
|-
| DirectX 7.0 || [[File:Trainstation volumetric DX70 Source 2006.jpg|Old Engine - DirectX 7.0 ({{code|dxlevel 70}})|288px]] || Unsupported since {{src07|name}} || Unsupported since {{src07|name}}
|-
|-
| DirectX 7.0 || [[File:Trainstation volumetric DX70 Source 2006.jpg|Old Engine - DirectX 7.0 ({{code|dxlevel 70}})|384px]] || Unsupported since {{src07|name}}  
| DirectX 8.0 || [[File:Trainstation volumetric DX80 Source 2006.jpg|Old Engine - DirectX 8.0 ({{code|dxlevel 80}})|288px]] || [[File:Trainstation volumetric DX80 Source 2013.jpg|New Engine - DirectX 8.0 ({{code|dxlevel 80}})|288px]] || [[File:Trainstation_volumetric_DX80_HL2_Anniversary.jpg|New Engine (HL2 20th Anniversary) - DirectX 8.0 ({{code|dxlevel 95}})|288px]]
|-
|-
| DirectX 8.0 || [[File:Trainstation volumetric DX80 Source 2006.jpg|Old Engine - DirectX 8.0 ({{code|dxlevel 80}})|384px]] || [[File:Trainstation volumetric DX80 Source 2013.jpg|New Engine - DirectX 8.0 ({{code|dxlevel 80}})|384px]] || {{Todo}}
| DirectX 8.1 || [[File:Trainstation volumetric DX81 Source 2006.jpg|Old Engine - DirectX 8.1 ({{code|dxlevel 81}})|288px]] || [[File:Trainstation volumetric DX81 Source 2013.jpg|New Engine - DirectX 8.1 ({{code|dxlevel 81}})|288px]] || [[File:Trainstation_volumetric_DX81_HL2_Anniversary.jpg|New Engine (HL2 20th Anniversary) - DirectX 8.1 - LDR ({{code|dxlevel 95}})|288px]]
|-
|-
| DirectX 8.1 || [[File:Trainstation volumetric DX81 Source 2006.jpg|Old Engine - DirectX 8.1 ({{code|dxlevel 81}})|384px]] || [[File:Trainstation volumetric DX81 Source 2013.jpg|New Engine - DirectX 8.1 ({{code|dxlevel 81}})|384px]] || {{Todo}}
| DirectX 9.0/9.0+ (LDR) || [[File:Trainstation volumetric DX95 Source 2006.jpg|Old Engine - DirectX 9.0/9.0+ - LDR ({{code|dxlevel 95}})|288px]] || [[File:Trainstation volumetric DX95 Source 2013.jpg|New Engine - DirectX 9.0+ ({{code|dxlevel 95}})|288px]] || [[File:Trainstation_volumetric_DX90_HL2_Anniversary.jpg|New Engine (HL2 20th Anniversary) - DirectX 9.0/9.0+ - LDR ({{code|dxlevel 95}})|288px]]
|-
|-
| DirectX 9.0+ || [[File:Trainstation volumetric DX95 Source 2006.jpg|Old Engine - DirectX 9.0+ ({{code|dxlevel 95}})|384px]] || [[File:Trainstation volumetric DX95 Source 2013.jpg|New Engine - DirectX 9.0+ ({{code|dxlevel 95}})|384px]] || {{Todo}}
| DirectX 9.0/9.0+ (HDR) || [[File:Trainstation volumetric DX95 Source 2006.jpg|Old Engine - DirectX 9.0+ ({{code|dxlevel 95}})|288px]] {{todo|HDR version}} || [[File:Trainstation volumetric DX95 Source 2013.jpg|New Engine - DirectX 9.0+ ({{code|dxlevel 95}})|288px]] {{todo|HDR version}} || [[File:Trainstation_volumetric_DX95_HL2_Anniversary.jpg|New Engine (HL2 20th Anniversary) - DirectX 9.0/9.0+ - HDR ({{code|dxlevel 95}})|288px]]
|}
|}


Line 103: Line 105:


==={{css}} VGUI Menus===
==={{css}} VGUI Menus===
In {{src04|1}} and {{src06|1}} on {{nvidia|4}} GPUs (both older GPUs before GeForce 8 series or newer GPUs using driver "516.5x" and later), renders VGUI elements darker in DirectX 9 mode (similar to DirectX 8 or lower). However on AMD/Intel GPUs, and Nvidia GPUs after GeForce 8 series (before driver version "516.5x") instead renders VGUI brighter than usual, which ended up making some text unreadable. {{src07|1}} and later always render VGUI elements bright on DirectX 9 mode (even on {{nvidia|1}} GPUs which fixed the issue).
In {{src04|1}} and {{src06|1}} on {{nvidia|3.1}} GPUs (both older GPUs before GeForce 8 series or newer GPUs using driver "516.5x" and later), renders VGUI elements darker in DirectX 9 mode (similar to DirectX 8 or lower). However on {{AMD|3.1}}/{{Intel|3.1}} GPUs, and Nvidia GPUs after GeForce 8 series (before driver version "516.5x") instead renders VGUI brighter than usual, which ended up making some text unreadable. {{src07|1}} and later always render VGUI elements bright on DirectX 9 mode (even on {{nvidia|1}} GPUs which fixed the issue).


Using D3D9 to D3D11/D3D12/[[Vulkan]] wrapper will break the NVIDIA driver fix and makes VGUI element look bright and fog more dense again.
Using D3D9 to D3D11/D3D12/[[Vulkan]] wrapper will break the NVIDIA driver fix and makes VGUI element look bright and fog more dense again.
Line 118: Line 120:
| DirectX 9.0/9.0+ (on {{Nvidia|3.1}}) || [[File:CSS Old Engine - DX95.jpg|VGUI on DirectX 9.0 or higher (Old Engine, Nvidia GPU)|384px]] || [[File:CSS New Engine - DX95.jpg|VGUI on DirectX 9.0 or higher (New Engine)|384px]]
| DirectX 9.0/9.0+ (on {{Nvidia|3.1}}) || [[File:CSS Old Engine - DX95.jpg|VGUI on DirectX 9.0 or higher (Old Engine, Nvidia GPU)|384px]] || [[File:CSS New Engine - DX95.jpg|VGUI on DirectX 9.0 or higher (New Engine)|384px]]
|-
|-
| DirectX 9.0/9.0+ (on {{AMD|3.1}}/Intel) || [[File:CSS Old Engine - DX95 Bugged.jpg|VGUI on DirectX 9.0 or higher (Old Engine, AMD/Intel GPU)|384px]] || [[File:CSS New Engine - DX95.jpg|VGUI on DirectX 9.0 or higher (New Engine)|384px]]
| DirectX 9.0/9.0+ (on {{AMD|3.1}}/{{Intel|3.1}}) || [[File:CSS Old Engine - DX95 Bugged.jpg|VGUI on DirectX 9.0 or higher (Old Engine, AMD/Intel GPU)|384px]] || [[File:CSS New Engine - DX95.jpg|VGUI on DirectX 9.0 or higher (New Engine)|384px]]
|}
|}


[[Category:Material System]][[Category:Graphics API]][[Category:Screenshots]]
[[Category:Material System]][[Category:Graphics API]][[Category:Screenshots]]
[[Category:VGUI]]

Latest revision as of 21:00, 26 July 2025

Sample screenshots

Note.pngNote:Starting with Source 2007 or Source 2009, all DirectX feature levels prior to DX8 were dropped, while DX9 (since Source 2006) added support for HDR (later improved in Source 2007), color correction and other newer graphical features not present in older engine branches.
Additionally, all screenshots appeared to be based off the default settings (with the exception of Train Station screenshots with maximum settings and MSAA 8X), with no anti-aliasing and little to no anisotropic filtering (or bilinear/trilinear texture filtering).
On some hardware running newer version of Half-Life 2, the game may run at 4X MSAA and has 8X anisotropic filtering by default, unlike previous versions (Old Engine).

Half-Life 2 Canals

These screenshots demonstrate displacement map texture blending, directional lightmaps and cubemapped then reflective water.

DirectX levels Old Engine New Engine (Source 2013) 20th Anniversary
DirectX 6.0 Old Engine - DirectX 6.0 (dxlevel 60) Unsupported since Source 2007
DirectX 7.0 Old Engine - DirectX 7.0 (dxlevel 70) Unsupported since Source 2007
DirectX 8.0 Old Engine - DirectX 8.0 (dxlevel 80) New Engine - DirectX 8.0 (dxlevel 80) [Todo]
DirectX 8.1 Old Engine - DirectX 8.1 (dxlevel 81) New Engine - DirectX 8.1 (dxlevel 81) [Todo]
DirectX 9.0+ Old Engine - DirectX 9.0+ (dxlevel 90) New Engine - DirectX 9.0+ (dxlevel 95) [Todo]

Half-Life 2 Dropship

These screenshots show shadow quality at different rendering levels, ranging from none to soft, dynamic shadows.

DirectX levels Old Engine New Engine (Source 2013) 20th Anniversary
DirectX 6.0 Old Engine - DirectX 6.0 (dxlevel 60) Unsupported since Source 2007
DirectX 7.0 Old Engine - DirectX 7.0 (dxlevel 70) Unsupported since Source 2007
DirectX 8.0 Old Engine - DirectX 8.0 (dxlevel 80) New Engine - DirectX 8.0 (dxlevel 80) [Todo]
DirectX 8.1 Old Engine - DirectX 8.1 (dxlevel 81) New Engine - DirectX 8.1 (dxlevel 81) [Todo]
DirectX 9.0+ Old Engine - DirectX 9.0+ (dxlevel 90) New Engine - DirectX 9.0+ (dxlevel 95) [Todo]

Half-Life 2 Storm drain

These screenshots show directional lightmaps and cube-mapped specular effects.

DirectX levels Old Engine New Engine (Source 2013) 20th Anniversary
DirectX 6.0 Old Engine - DirectX 6.0 (dxlevel 60) Unsupported since Source 2007
DirectX 7.0 Old Engine - DirectX 7.0 (dxlevel 70) Unsupported since Source 2007
DirectX 8.0 Old Engine - DirectX 8.0 (dxlevel 80) New Engine - DirectX 8.0 (dxlevel 80) [Todo]
DirectX 8.1 Old Engine - DirectX 8.1 (dxlevel 81) New Engine - DirectX 8.0 (dxlevel 81) [Todo]
DirectX 9.0+ Old Engine - DirectX 9.0+ (dxlevel 90) New Engine - DirectX 9.0+ (dxlevel 95) [Todo]

Half-Life 2 Zombie

These screenshots demonstrate the use of normal-mapping on models. The final shot has full, normal-mapped lighting.

DirectX levels Old Engine New Engine (Source 2013) 20th Anniversary
DirectX 6.0 Old Engine - DirectX 6.0 (dxlevel 60) Unsupported since Source 2007
DirectX 7.0 Old Engine - DirectX 7.0 (dxlevel 70) Unsupported since Source 2007
DirectX 8.0 Old Engine - DirectX 8.0 (dxlevel 80) New Engine - DirectX 8.0 (dxlevel 80) [Todo]
DirectX 8.1 Old Engine - DirectX 8.1 (dxlevel 81) New Engine - DirectX 8.1 (dxlevel 81) [Todo]
DirectX 9.0+ Old Engine - DirectX 9.0+ (dxlevel 90) New Engine - DirectX 9.0+ (dxlevel 95) [Todo]

Half-Life 2 Train Station (fake volumetric lighting)

These screenshots shows the differences between DirectX 8 and 9 on the fake volumetric lighting. While the DirectX 9.0+ volumetric lighting on Old Engine was slightly less visible compared to DX8 counterpart, the volumetric lighting on New Engine DX9 was even less visible (or nearly invisible) compared to Old Engine's DX9, probably due to a bug (or changes to the lighting/shaders) on Source 2007 and later.[1][2] While this has been fixed in Half-Life 2: Update, Half-Life 2 20th Anniversary Update tries to make volumetric lighting prop brighter in DX9 but this cause DX8 version to appear too bright.

DirectX levels Old Engine New Engine (Source 2013) 20th Anniversary
DirectX 6.0 Old Engine - DirectX 6.0 (dxlevel 60) Unsupported since Source 2007 Unsupported since Source 2007
DirectX 7.0 Old Engine - DirectX 7.0 (dxlevel 70) Unsupported since Source 2007 Unsupported since Source 2007
DirectX 8.0 Old Engine - DirectX 8.0 (dxlevel 80) New Engine - DirectX 8.0 (dxlevel 80) New Engine (HL2 20th Anniversary) - DirectX 8.0 (dxlevel 95)
DirectX 8.1 Old Engine - DirectX 8.1 (dxlevel 81) New Engine - DirectX 8.1 (dxlevel 81) New Engine (HL2 20th Anniversary) - DirectX 8.1 - LDR (dxlevel 95)
DirectX 9.0/9.0+ (LDR) Old Engine - DirectX 9.0/9.0+ - LDR (dxlevel 95) New Engine - DirectX 9.0+ (dxlevel 95) New Engine (HL2 20th Anniversary) - DirectX 9.0/9.0+ - LDR (dxlevel 95)
DirectX 9.0/9.0+ (HDR) Old Engine - DirectX 9.0+ (dxlevel 95)
Todo: HDR version
New Engine - DirectX 9.0+ (dxlevel 95)
Todo: HDR version
New Engine (HL2 20th Anniversary) - DirectX 9.0/9.0+ - HDR (dxlevel 95)

Portal Portals

These screenshots compares the texture and particles quality on the portals. Also Portal with RTX added here as it's the only Source 2013 game which support DX7 level, but with all of it's materials replaced with PBR-capable materials and real-time ray-traced lighting.

DirectX levels Image
DirectX 7.0 and earlier Unsupported and non-functional. Screenshot identical to DirectX 8.0.
DirectX 7.0
(Portal with RTX only)
Portals on DirectX 7.0 level (only supported in Portal with RTX) (dxlevel 70)
DirectX 8.0 Portals on DirectX 8.0 (dxlevel 80)
DirectX 8.1 Portals on DirectX 8.1 (dxlevel 81)
DirectX 9.0+
(LDR)
Portals on DirectX 9.0+ (dxlevel 95), with HDR disabled
DirectX 9.0+
(HDR)
Portals on DirectX 9.0+ (dxlevel 95), with HDR enabled

Counter-Strike: Source VGUI Menus

In Source 2004 and Source 2006 on Nvidia GPUs (both older GPUs before GeForce 8 series or newer GPUs using driver "516.5x" and later), renders VGUI elements darker in DirectX 9 mode (similar to DirectX 8 or lower). However on AMD/Intel GPUs, and Nvidia GPUs after GeForce 8 series (before driver version "516.5x") instead renders VGUI brighter than usual, which ended up making some text unreadable. Source 2007 and later always render VGUI elements bright on DirectX 9 mode (even on Nvidia GPUs which fixed the issue).

Using D3D9 to D3D11/D3D12/Vulkan wrapper will break the NVIDIA driver fix and makes VGUI element look bright and fog more dense again.

This VGUI issue also affects env_fog_controller (fog) on Source 2004 and Source 2006, which makes fog more dense than usual.

Note.pngNote:Screenshot taken from Counter-Strike: Source Counter-Strike: Source (v34, Source 2006) and Counter-Strike: Source Counter-Strike: Source (Team Fortress 2 branch).
DirectX levels Old Engine New Engine
DirectX 8.1, 8.0 or lower VGUI on DirectX 8.1 or lower (Old Engine) VGUI on DirectX 8.1 or lower (New Engine)
DirectX 9.0/9.0+ (on Nvidia) VGUI on DirectX 9.0 or higher (Old Engine, Nvidia GPU) VGUI on DirectX 9.0 or higher (New Engine)
DirectX 9.0/9.0+ (on AMD/Intel) VGUI on DirectX 9.0 or higher (Old Engine, AMD/Intel GPU) VGUI on DirectX 9.0 or higher (New Engine)