DirectX Versions

From Valve Developer Community
Revision as of 03:14, 4 April 2023 by Kr0tchet (talk | contribs)
Jump to navigation Jump to search
English (en)日本語 (ja)Русский (ru)Translate (Translate)

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

Confirm:Check if it's still works on Source 2007/Source 2009, marked as unsupported but still works (tested on Source 2004 and Source 2006, which works differently) according to dxsupport.cfg existed since Source 2004.

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 Source 2006:

DX9 Shader Model 3 (in all games since Source 2006)

Referred to as "DirectX 9.0+" and "dxlevel 95".

  • Lightwarp support

DX9Ex

Referred to as "dxlevel 98". Made specifically for Xbox 360Xbox 360. Template:ModernWarning

Differences of dxlevel 95 (DX9 SM 3.0) and 98 (DX9Ex) (according to "dxsupport.cfg" on Half-Life 2 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 Strata SourceSource 2)

Referred to as "dxlevel 11" or "dxlevel 110". Template:ModernNote Template:ModernNote

Sample screenshots

Canals

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

DirectX 6.0 Canals5 dx6.jpg
DirectX 7.0 Canals5 dx7.jpg
DirectX 8.0 Canals5 dx8.jpg
DirectX 8.1 Canals5 dx81.jpg
DirectX 9.0+ Canals5 dx9.jpg

Dropship

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

DirectX 6.0 Canals2 dx6.jpg
DirectX 7.0 Canals2 dx7.jpg
DirectX 8.0 Canals2 dx8.jpg
DirectX 8.1 Canals2 dx81.jpg
DirectX 9.0+ Canals2 dx9.jpg

Storm drain

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

DirectX 6.0 Canals3 dx6.jpg
DirectX 7.0 Canals3 dx7.jpg
DirectX 8.0 Canals3 dx8.jpg
DirectX 8.1 Canals3 dx81.jpg
DirectX 9.0+ Canals3 dx9.jpg

Zombie

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

DirectX 6.0 Zombie dx6.jpg
DirectX 7.0 Zombie dx7.jpg
DirectX 8.0 Zombie dx8.jpg
DirectX 8.1 Zombie dx81.jpg
DirectX 9.0+ Zombie dx9.jpg