Direct3D: Difference between revisions
(5 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
'''Direct3D''' is a graphics application programming interface (API) for {{win|4|nt=1}}. It is part of {{wiki|DirectX}}. | '''Direct3D''' is a graphics application programming interface (API) for {{win|4|nt=1}}. It is part of {{wiki|DirectX}}. | ||
{{gldsrc|4}} engines ships with a [[software renderer]], [[OpenGL]] and initially, {{w|Direct3D#Direct3D_6.0|Direct3D 6}}, prior to it being removed in 2013 after [[SteamPipe]] update. Unlike OpenGL (since detail textures support was added in 2004 with the release of {{cscz|1|nt=CS:CZ}}) and like the Software renderer, it doesn't seems to have issues with overbright lighting. | {{gldsrc|4}} engines ships with a [[software renderer]], [[OpenGL]] and initially, '''{{w|Direct3D#Direct3D_6.0|Direct3D 6}}''', prior to it being removed in 2013 after [[SteamPipe]] update. Unlike OpenGL (since detail textures support was added in 2004 with the release of {{cscz|1|nt=CS:CZ}}) and like the Software renderer, it doesn't seems to have issues with overbright lighting. In {{nightfire|2}}, a heavily modified GoldSrc game, it used '''Direct3D 8''' instead. With the {{hl1|1}} 25th Anniversary Update, all GoldSrc games also uses Direct3D 9 but only for [[Startup Videos|startup videos]] when [[software renderer]] is used. | ||
{{source|4}} | {{source|4}} primarily used '''Direct3D 9''', initially Shader Model 2.0, which later was upgraded to support Shader Model 3.0 {{since|{{src04}} as of 2005}}, but offers backward compatibility with older GPUs (that predates DirectX 9) using [[DirectX Versions|DirectX feature levels]] as low as DirectX 8 (or DirectX 7 and 6 in previous version of Source before {{tobbranch|1}}). {{l4dbranch|2}} requires GPUs with Shader Model 3.0 support in order to run. | ||
Some third-party engine branch like {{tfbranch|2}} and {{strata|2}} use Direct3D 11 instead. As of 2024, nearly all of Valve games also added support for [[Vulkan]] renderer on Windows, using DXVK to translates D3D9 to Vulkan. Enabling Vulkan translation will require the "{{code|-vulkan}}" launch option (except in {{portalrtx|1}} and upcoming {{hl2rtx|1}}). | Some third-party engine branch like {{tfbranch|2}} and {{strata|2}} use Direct3D 11 instead. As of 2024, nearly all of Valve games also added support for [[Vulkan]] renderer on Windows, using third-party wrapper DXVK to translates D3D9 to Vulkan. Enabling Vulkan translation will require the "{{code|-vulkan}}" launch option (except in {{portalrtx|1}} and upcoming {{hl2rtx|1}}, and in {{tf2branch|1}} games which boots to Vulkan by default on Linux). | ||
{{source2|4}} | {{source2|4}} primarily uses '''Direct3D 11''', but also has options to use the [[Vulkan]] renderer. | ||
== {{gldsrc|4|nt=4}} Direct3D== | == {{gldsrc|4|nt=4}} Direct3D== | ||
Line 21: | Line 21: | ||
* '''[[Detail textures (GoldSrc)|Detailed textures]] ''' | * '''[[Detail textures (GoldSrc)|Detailed textures]] ''' | ||
===Direct3D 8=== | ===Direct3D 8=== | ||
Direct3D 8 only on {{csXbox| | Direct3D 8 is used only on {{csXbox|2}} and {{nightfire|2}}. | ||
====Features==== | ====Features==== | ||
* '''Dynamic iris simulation''' - automatically adjust brightness, similar to [[HDR|HDR Rendering]] {{csXbox|only}} | * '''Dynamic iris simulation''' - automatically adjust brightness, similar to [[HDR|HDR Rendering]] {{csXbox|only}} | ||
===Direct3D 9=== | |||
Since {{hl|1}} 25th Anniversary Update, Direct3D 9 is used to display startup videos when software renderer is used. | |||
== {{Src|4}} Direct3D == | == {{Src|4}} Direct3D == | ||
* Primarily runs on Direct3D 9.0. Some third-party engine branches use Direct3D 11 or 12. | * Primarily runs on Direct3D 9.0. Some third-party engine branches use Direct3D 11 or 12. | ||
* Prior to {{l4dbranch|1}}, Source supports [[DirectX Versions|DirectX compatibility levels]] for older graphics card (such as DirectX 8 level card) that only support some, but not all DX9 features (or works poorly when run on DirectX 9 level). | * Prior to {{l4dbranch|1}}, Source supports [[DirectX Versions|DirectX compatibility levels]] for older graphics card (such as DirectX 8 level card) that only support some, but not all DX9 features (or works poorly when run on DirectX 9 level). | ||
* Support Shader Model 2.0 (and 3.0 after {{ | * Support Shader Model 2.0 (and 3.0 after updates to {{src04|1}} since {{dods|1}}). | ||
* In {{ | ** Shader Model 5.0 and 6.0 if Direct3D 11 or 12 is used. | ||
* In all games since {{srcmp|1}} (since 2011){{Cite|1}}, {{Src13|1}} and {{Csgo|1|nt=CS:GO}}, also support D3D9Ex (labeled as ''Windows Aero DirectX extensions'' in game options), which can improve performance on some GPUs. [[W:Windows Vista|Windows Vista]] (or later) only. Can be disabled using {{code|-nod3d9ex}} ({{code|-disable_d3d9ex}} for CS:GO). | |||
** {{Bug|hidetested=1|Despite Valve claiming that the issue has been fixed,{{Cite|1}} you cannot disable D3D9Ex (''Windows Aero DirectX extensions'') via in-game Advanced Video Options. Valve later eventually removed the D3D9Ex toggle in {{tf2branch|1}}.}} | |||
* See {{source|1}} page for features. | * See {{source|1}} page for features. | ||
Line 47: | Line 51: | ||
*{{w|Quake (video_game)#WinQuake|WinQuake}} on Wikipedia | *{{w|Quake (video_game)#WinQuake|WinQuake}} on Wikipedia | ||
*[https://quake.fandom.com/wiki/WinQuake WinQuake] on Quake Fandom wiki | *[https://quake.fandom.com/wiki/WinQuake WinQuake] on Quake Fandom wiki | ||
{{references|1= | |||
{{ref2|cite id=1|access-date=July 20, 2025|The earliest changelog to mention D3D9Ex (Windows Aero DirectX Extensions) was in Dec 15, 2011. This change applies to all '''Source MP''' games. [http://store.steampowered.com/news/7024/ Team Fortress 2, Counter-Strike: Source, Day of Defeat: Source and Half-Life 2: Deathmatch Updates Released]. {{Quote|'''Source Engine Changes (TF2, DoD:S, HL2:DM)'''</br> | |||
- Fixed a bug which caused Windows Aero Extensions video option to always be enabled, regardless of setting. Disabling this can improve compatibility with third-party programs and overlays, but may also affect performance.}} | |||
}} | |||
}} | |||
[[Category:Graphics API]] | [[Category:Graphics API]] |
Latest revision as of 22:37, 13 September 2025
Direct3D is a graphics application programming interface (API) for Microsoft Windows. It is part of
DirectX.
GoldSrc engines ships with a software renderer, OpenGL and initially,
Direct3D 6, prior to it being removed in 2013 after SteamPipe update. Unlike OpenGL (since detail textures support was added in 2004 with the release of CS:CZ) and like the Software renderer, it doesn't seems to have issues with overbright lighting. In
James Bond 007: Nightfire, a heavily modified GoldSrc game, it used Direct3D 8 instead. With the Half-Life 25th Anniversary Update, all GoldSrc games also uses Direct3D 9 but only for startup videos when software renderer is used.
Source primarily used Direct3D 9, initially Shader Model 2.0, which later was upgraded to support Shader Model 3.0 (in all games since
as of 2005), but offers backward compatibility with older GPUs (that predates DirectX 9) using DirectX feature levels as low as DirectX 8 (or DirectX 7 and 6 in previous version of Source before Orange Box branch).
Left 4 Dead engine branch requires GPUs with Shader Model 3.0 support in order to run.
Some third-party engine branch like Titanfall branch and
Strata Source use Direct3D 11 instead. As of 2024, nearly all of Valve games also added support for Vulkan renderer on Windows, using third-party wrapper DXVK to translates D3D9 to Vulkan. Enabling Vulkan translation will require the "-vulkan" launch option (except in Portal with RTX and upcoming Half-Life 2 RTX, and in Team Fortress 2 branch games which boots to Vulkan by default on Linux).
Source 2 primarily uses Direct3D 11, but also has options to use the Vulkan renderer.
GoldSrc Direct3D
Direct3D 6
Features
- Colored lighting - Quake simply had monotone lighting
- Transparent textures - Glass can now be used in maps
- Texture Filtering - Quake (GLQuake) simply Texture Filtering
- Detailed textures
Direct3D 8
Direct3D 8 is used only on Counter-Strike (Xbox) and
James Bond 007: Nightfire.
Features
- Dynamic iris simulation - automatically adjust brightness, similar to HDR Rendering (only in
)
Direct3D 9
Since Half-Life 25th Anniversary Update, Direct3D 9 is used to display startup videos when software renderer is used.
Source Direct3D
- Primarily runs on Direct3D 9.0. Some third-party engine branches use Direct3D 11 or 12.
- Prior to Left 4 Dead engine branch, Source supports DirectX compatibility levels for older graphics card (such as DirectX 8 level card) that only support some, but not all DX9 features (or works poorly when run on DirectX 9 level).
- Support Shader Model 2.0 (and 3.0 after updates to Source 2004 since Day of Defeat: Source).
- Shader Model 5.0 and 6.0 if Direct3D 11 or 12 is used.
- In all games since Source Multiplayer (since 2011)[1], Source 2013 and CS:GO, also support D3D9Ex (labeled as Windows Aero DirectX extensions in game options), which can improve performance on some GPUs. Windows Vista (or later) only. Can be disabled using -nod3d9ex (-disable_d3d9ex for CS:GO).
Bug:Despite Valve claiming that the issue has been fixed,[1] you cannot disable D3D9Ex (Windows Aero DirectX extensions) via in-game Advanced Video Options. Valve later eventually removed the D3D9Ex toggle in Team Fortress 2 branch.
- See Source page for features.
Source 2 Direct3D
- Runs on Direct3D 11
- Shader Model 5.0
- See Source 2 page for features.
See also
- DirectX Versions - list of DirectX feature levels
- OpenGL
- Vulkan, another graphics API, successor to OpenGL.
- Software renderer
External links
References
References | ||
---|---|---|
|