Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.

Difference between revisions of "Template:API"

From PCGamingWiki, the wiki about fixing PC games
(added Glide switch)
m (macOS Big Sur > macOS 11 Big Sur)
(40 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<includeonly><div class="container-pcgwikitable"><table class="pcgwikitable template-infotable" id="table-api">
+
<includeonly>{{#vardefine:section|Other_information}}{{#if:{{{direct3d versions|}}}{{{directdraw versions|}}}{{{wing|}}}{{{opengl versions|}}}{{{glide versions|}}}{{{software mode|}}}{{{mantle support|}}}{{{metal support|}}}{{{vulkan versions|}}}{{#var:DOS}}{{#var:PC booter}}{{{shader model versions|}}}{{#var:Windows 3.x}}{{#var:Windows native}}{{{windows exe notes|}}}{{#var:OS X}}{{{macos app notes|}}}{{{macos arm notes|}}}{{#var:Linux native}}{{{linux executable notes|}}}|
<tr class="template-infotable-head">
+
{{#if:{{{direct3d versions|}}}{{{directdraw versions|}}}{{{wing|}}}{{{opengl versions|}}}{{{glide versions|}}}{{{software mode|}}}{{{mantle support|}}}{{{metal support|}}}{{{vulkan versions|}}}{{#var:DOS}}{{#var:PC booter}}{{{shader model versions|}}}
<th scope="col" style="width: 230px;">Technical specs</th>
+
|<div class="container-pcgwikitable"><table class="pcgwikitable template-infotable" id="table-api">
<th scope="col" style="width: 120px;">Supported</th>
+
<tr class="template-infotable-head table-api-head-row">
<th scope="col" style="width: 470px;">Notes</th>
+
<th scope="col" style="width: 230px;" class="table-api-head-parameter">Technical specs</th>
 +
<th scope="col" style="width: 120px;" class="table-api-head-support">Supported</th>
 +
<th scope="col" style="width: 470px;" class="table-api-head-notes">Notes</th>
 
</tr>
 
</tr>
  
 
{{#if: {{{direct3d versions|}}} |
 
{{#if: {{{direct3d versions|}}} |
<tr class="template-infotable-body">
+
{{#ifeq: {{lc:{{{direct3d versions|}}}}} | false ||
<th scope="row">Direct3D</th>
+
<tr class="template-infotable-body table-api-body-row">
<td>{{#arraymaptemplate:{{{direct3d versions}}}|API/switch Direct3D|,|,&#32;}}</td>
+
<th scope="row" class="table-api-body-parameter"><abbr title="Only supported on Windows">Direct3D</abbr></th>
<td>{{{direct3d notes|}}}</td>
+
<td class="table-api-body-support">{{#switch:{{lc:{{{direct3d versions|}}}}}
</tr>
+
|true
 +
|unknown={{Tickcross|{{{direct3d versions|}}}|Direct3D versions|unknown}}
 +
|hackable={{Tickcross|hackable|Direct3D versions|{{{direct3d notes|}}}}}
 +
|#default={{#arraymaptemplate:{{{direct3d versions}}}|API/switch Direct3D|,|,&#32;}} }}</td>
 +
<td class="table-api-body-notes">{{{direct3d notes|}}}</td>
 +
</tr>
 +
}}
 
}}
 
}}
 
{{#if: {{{directdraw versions|}}} |
 
{{#if: {{{directdraw versions|}}} |
<tr class="template-infotable-body">
+
{{#ifeq: {{lc:{{{directdraw versions|}}}}} | false ||
<th scope="row">DirectDraw</th>
+
<tr class="template-infotable-body table-api-body-row">
<td>{{#ifeq: {{lc:{{{directdraw versions|unknown}}}}} | unknown | {{Tickcross|Unknown}} | {{{directdraw versions|}}} {{#arraymap:{{{directdraw versions|}}}|,|var|[[DirectDraw versions::var| ]]|&#32;}} }}</td>
+
<th scope="row" class="table-api-body-parameter"><abbr title="Only supported on Windows">DirectDraw</abbr></th>
<td>{{{directdraw notes|}}}</td>
+
<td class="table-api-body-support">{{#switch:{{lc:{{{directdraw versions|}}}}}
</tr>
+
|true
 +
|unknown={{Tickcross|{{{directdraw versions|}}}|DirectDraw versions|unknown}}
 +
|hackable={{Tickcross|hackable|DirectDraw versions|{{{directdraw notes|}}}}}
 +
|#default={{{directdraw versions|}}}{{#arraymap:{{{directdraw versions|}}}|,|var|[[DirectDraw versions::var| ]]|&#32;}} }}</td>
 +
<td class="table-api-body-notes">{{{directdraw notes|}}}</td>
 +
</tr>
 +
}}
 +
}}
 +
{{#if: {{{wing|}}} |
 +
{{#if: {{#var:Windows native}}{{#var:Windows 3.x}} |
 +
{{#ifeq: {{lc:{{{wing|}}}}} | false ||
 +
{{#ifeq: {{lc:{{{wing|}}}}} | unknown ||
 +
<tr class="template-infotable-body table-api-body-row">
 +
<th scope="row" class="table-api-body-parameter">WinG</th>
 +
<td class="table-api-body-support">{{Tickcross|{{{wing|}}}|WinG|{{{wing notes|}}}}}</td>
 +
<td class="table-api-body-notes">{{{wing notes|}}}</td>
 +
</tr>
 +
}}
 +
}}
 +
}}
 
}}
 
}}
 
{{#if: {{{opengl versions|}}} |
 
{{#if: {{{opengl versions|}}} |
<tr class="template-infotable-body">
+
{{#ifeq: {{lc:{{{opengl versions|}}}}} | false ||
<th scope="row">OpenGL</th>
+
<tr class="template-infotable-body table-api-body-row">
<td>{{#ifeq: {{lc:{{{opengl versions|unknown}}}}} | unknown | {{Tickcross|Unknown}} | {{{opengl versions|}}} {{#arraymap:{{{opengl versions|}}}|,|var|[[OpenGL versions::var| ]]|&#32;}} }}</td>
+
<th scope="row" class="table-api-body-parameter">OpenGL</th>
<td>{{{opengl notes|}}}</td>
+
<td class="table-api-body-support">{{#switch:{{lc:{{{opengl versions|}}}}}
</tr>
+
|true
 +
|unknown={{Tickcross|{{{opengl versions|}}}|OpenGL versions|unknown}}
 +
|hackable={{Tickcross|hackable|OpenGL versions|{{{opengl notes|}}}}}
 +
|#default={{{opengl versions|}}}{{#arraymap:{{{opengl versions|}}}|,|var|[[OpenGL versions::var| ]]|&#32;}} }}</td>
 +
<td class="table-api-body-notes">{{{opengl notes|}}}</td>
 +
</tr>
 +
}}
 
}}
 
}}
 
{{#if: {{{glide versions|}}} |
 
{{#if: {{{glide versions|}}} |
<tr class="template-infotable-body">
+
{{#ifeq: {{lc:{{{glide versions|}}}}} | false |[[Category:Invalid template usage (API)]]|
<th scope="row">Glide</th>
+
<tr class="template-infotable-body table-api-body-row">
<td>{{#arraymaptemplate:{{{glide versions}}}|API/switch Glide|,|,&#32;}}</td>
+
<th scope="row" class="table-api-body-parameter">Glide</th>
<td>{{{glide notes|}}}</td>
+
<td class="table-api-body-support">{{#switch:{{lc:{{{glide versions|}}}}}
</tr>
+
|true
 +
|unknown
 +
|hackable={{Tickcross|{{{glide versions|}}}|Glide versions|{{{glide notes|}}}}}
 +
|#default={{{glide versions|}}}{{#arraymap:{{{glide versions|}}}|,|var|[[Glide versions::var| ]]|&#32;}} }}</td>
 +
<td class="table-api-body-notes">{{{glide notes|}}}</td>
 +
</tr>
 +
}}
 
}}
 
}}
 
{{#if: {{{software mode|}}} |
 
{{#if: {{{software mode|}}} |
 
{{#ifeq: {{lc:{{{software mode|}}}}} | false ||
 
{{#ifeq: {{lc:{{{software mode|}}}}} | false ||
 
{{#ifeq: {{lc:{{{software mode|}}}}} | unknown ||
 
{{#ifeq: {{lc:{{{software mode|}}}}} | unknown ||
<tr class="template-infotable-body">
+
<tr class="template-infotable-body table-api-body-row">
<th scope="row">Software renderer</th>
+
<th scope="row" class="table-api-body-parameter">Software renderer</th>
<td>{{Tickcross|{{{software mode|unknown}}}|Software renderer}}</td>
+
<td class="table-api-body-support">{{Tickcross|{{{software mode|}}}|Software renderer|{{{software mode notes|}}}}}</td>
<td>{{{software mode notes|}}}</td>
+
<td class="table-api-body-notes">{{{software mode notes|}}}</td>
 
</tr>
 
</tr>
 
}}
 
}}
 
}}
 
}}
 +
{{#ifeq:{{{software mode|}}}|true|{{#if:{{#var:Windows 3.x}}{{#var:Windows native}}{{#var:Mac OS}}{{#var:OS X native}}{{#var:Linux native}}||[[Category:Invalid template usage (API)]]}}}}
 
}}
 
}}
 
{{#if: {{{mantle support|}}} |
 
{{#if: {{{mantle support|}}} |
 
{{#ifeq: {{lc:{{{mantle support|}}}}} | false ||
 
{{#ifeq: {{lc:{{{mantle support|}}}}} | false ||
 
{{#ifeq: {{lc:{{{mantle support|}}}}} | unknown ||
 
{{#ifeq: {{lc:{{{mantle support|}}}}} | unknown ||
<tr class="template-infotable-body">
+
<tr class="template-infotable-body table-api-body-row">
<th scope="row"><abbr title="Only supported on compatible AMD video cards">Mantle support</abbr></th>
+
<th scope="row" class="table-api-body-parameter"><abbr title="Only supported on compatible AMD video cards">Mantle support</abbr></th>
<td>{{Tickcross|{{{mantle support|unknown}}}|Mantle support}}</td>
+
<td class="table-api-body-support">{{Tickcross|{{{mantle support|}}}|Mantle support|{{{mantle support notes|}}}}}{{#vardefine:Warnings|true}}</td>
<td>{{{mantle support notes|}}}</td>
+
<td class="table-api-body-notes">{{{mantle support notes|}}}</td>
 
</tr>
 
</tr>
 
}}
 
}}
Line 57: Line 97:
 
}}
 
}}
 
{{#if: {{{metal support|}}} |
 
{{#if: {{{metal support|}}} |
{{#ifeq: {{lc:{{{metal support|}}}}} | false ||
+
{{#if: {{#var:OS X}} |
{{#ifeq: {{lc:{{{metal support|}}}}} | unknown ||
+
{{#ifeq: {{lc:{{{metal support|}}}}} | false ||
<tr class="template-infotable-body">
+
{{#ifeq: {{lc:{{{metal support|}}}}} | unknown ||
<th scope="row"><abbr title="Only supported on macOS (OS X)">Metal support</abbr></th>
+
<tr class="template-infotable-body table-api-body-row">
<td>{{Tickcross|{{{metal support|unknown}}}|Metal support}}</td>
+
<th scope="row" class="table-api-body-parameter"><abbr title="Only supported on macOS (OS X)">Metal support</abbr></th>
<td>{{{metal support notes|}}}</td>
+
<td class="table-api-body-support">{{Tickcross|{{{metal support|}}}|Metal support|{{{metal support notes|}}}}}</td>
</tr>
+
<td class="table-api-body-notes">{{{metal support notes|}}}</td>
 +
</tr>
 +
}}
 +
}}
 
}}
 
}}
 +
}}
 +
{{#if: {{{macos arm app|}}} |
 +
{{#if: {{#var:OS X}} |
 +
{{#ifeq: {{lc:{{{macos arm app|}}}}} | false ||
 +
{{#ifeq: {{lc:{{{macos arm app|}}}}} | unknown ||
 +
<tr class="template-infotable-body table-api-body-row">
 +
<th scope="row" class="table-api-body-parameter"><abbr title="Support for ARM-based macOS introduced with macOS 11 Big Sur in 2020">macOS (ARM)</abbr></th>
 +
<td class="table-api-body-support">{{Tickcross|{{{macos arm app|}}}|MacOS ARM app|{{{macos arm notes|}}}}}</td>
 +
<td class="table-api-body-notes">{{{macos arm notes|}}}</td>
 +
</tr>
 +
}}
 +
}}
 
}}
 
}}
 
}}
 
}}
Line 70: Line 125:
 
{{#ifeq: {{lc:{{{vulkan versions|}}}}} | false ||
 
{{#ifeq: {{lc:{{{vulkan versions|}}}}} | false ||
 
{{#ifeq: {{lc:{{{vulkan versions|}}}}} | unknown ||
 
{{#ifeq: {{lc:{{{vulkan versions|}}}}} | unknown ||
<tr class="template-infotable-body">
+
<tr class="template-infotable-body table-api-body-row">
<th scope="row">Vulkan</th>
+
<th scope="row" class="table-api-body-parameter">Vulkan</th>
<td>{{#arraymaptemplate:{{{vulkan versions}}}|API/switch Vulkan|,|,&#32;}}</td>
+
<td class="table-api-body-support">{{#switch:{{lc:{{{vulkan versions|}}}}}
<td>{{{vulkan notes|}}}</td>
+
|true={{Tickcross|true|Vulkan versions|true}}
 +
|hackable={{Tickcross|hackable|Vulkan versions|{{{vulkan notes|}}}}}
 +
|#default={{#arraymaptemplate:{{{vulkan versions}}}|API/switch Vulkan|,|,&#32;}} }}</td>
 +
<td class="table-api-body-notes">{{{vulkan notes|}}}</td>
 
</tr>
 
</tr>
 
}}
 
}}
 
}}
 
}}
 
}}
 
}}
{{#if: {{{dos modes|}}} |
+
{{#if: {{#var:DOS}}{{#var:PC booter}} |
<tr class="template-infotable-body">
+
<tr class="template-infotable-body table-api-body-row">
<th scope="row"><abbr title="Only applies to DOS version or DOSBox">DOS video modes</abbr></th>
+
<th scope="row" class="table-api-body-parameter"><abbr title="Only applies to DOS and/or PC booter versions">DOS video modes</abbr></th>
<td>{{#arraymaptemplate:{{{dos modes}}}|API/switch DOS|,|,&#32;}}</td>
+
<td class="table-api-body-support">{{#if: {{{dos modes|}}} | {{#ifeq: {{{dos modes|}}} | unknown | {{tickcross|unknown|DOS video modes}} | {{#arraymaptemplate:{{{dos modes}}}|API/switch DOS|,|,&#32;}} }} | {{tickcross|unknown|DOS video modes}} }}</td></td>
<td>{{{dos modes notes|}}}</td>
+
<td class="table-api-body-notes">{{{dos modes notes|}}}</td>
 
</tr>
 
</tr>
 
}}
 
}}
 
{{#if: {{{shader model versions|}}} |
 
{{#if: {{{shader model versions|}}} |
<tr class="template-infotable-body">
+
{{#ifeq: {{lc:{{{shader model versions|}}}}} | true |[[Category:Invalid template usage (API)]]|
<th scope="row">Shader Model support</th>
+
{{#ifeq: {{lc:{{{shader model versions|}}}}} | hackable |[[Category:Invalid template usage (API)]]|
<td>{{{shader model versions|unknown}}}</td>
+
{{#ifeq: {{lc:{{{shader model versions|}}}}} | false ||
<td>{{{shader model notes|}}}</td>
+
{{#ifeq: {{lc:{{{shader model versions|}}}}} | unknown ||
</tr>
+
<tr class="template-infotable-body table-api-body-row">
 +
<th scope="row" class="table-api-body-parameter">Shader Model support</th>
 +
<td class="table-api-body-support">{{{shader model versions|}}}</td>
 +
<td class="table-api-body-notes">{{{shader model notes|}}}</td>
 +
</tr>
 +
}}
 +
}}
 +
}}
 +
}}
 
}}
 
}}
<tr class="template-infotable-body">
+
</table></div>}}{{#if:{{#var:Windows 3.x native}}{{#var:Windows native}}{{{windows exe notes|}}}{{#var:OS X}}{{{macos app notes|}}}{{#var:Linux native}}{{{linux executable notes|}}}|<div class="container-pcgwikitable"><table class="pcgwikitable template-infotable">
<th scope="row"><abbr title="Compiled for 64-bit">64-bit executable</abbr></th>
+
<tr class="template-infotable-head table-api-head-row"><!--
<td>{{Tickcross|{{{64-bit executable|unknown}}}|64-bit executable|section=API}}</td>
+
-->{{#switch:{{{mac os x powerpc app|}}}|true|hackable={{#vardefine:powerpc app|true}}}}<!--
<td>{{{64-bit executable notes|}}}</td>
+
-->{{#switch:{{{linux powerpc app|}}}|true|hackable={{#vardefine:powerpc app|true}}}}
 +
<th scope="col" style="width: 230px;" class="table-api-head-parameter">Executable</th><!--
 +
-->{{#if:{{#var:powerpc app}}|<th scope="col" style="width: 50px;" class="table-api-head-support"><abbr title="PowerPC">PPC</abbr></th>}}<!--
 +
-->{{#if:{{#var:Windows 3.x native}}|<th scope="col" style="width: 50px;" class="table-api-head-support">16-bit</th>}}
 +
<th scope="col" style="width: 50px;" class="table-api-head-support">32-bit</th>
 +
<th scope="col" style="width: 50px;" class="table-api-head-support">64-bit</th>
 +
<th scope="col" style="width: {{#if:{{#var:powerpc app}} | 440px | 490px }};" class="table-api-head-notes">Notes</th>
 
</tr>
 
</tr>
</table>{{#if: {{{vulkan support|}}} |[[Category:Invalid template usage (API)]]}}<!-- Hidden property
+
{{#if:{{#var:Windows 3.x native}}{{#var:Windows native}}{{{windows exe notes|}}}|
-->[[PCGWR API::{{#var_final:PCGWR API}}| ]]<!--
+
<tr class="template-infotable-body table-api-body-row">
--></div></includeonly><noinclude>{{Documentation}}</noinclude>
+
<th scope="row" class="table-api-body-parameter">Windows</th><!--
 +
-->{{#if:{{#var:powerpc app}}|<td class="table-api-body-support">{{Tickcross-na|n/a}}</td>}}<!--
 +
-->{{#if:{{#var:Windows 3.x native}}|<td class="table-api-body-support">{{Tickcross|true}}</td>}}
 +
<td class="table-api-body-support">{{Tickcross|{{{windows 32-bit exe|}}}|Windows 32-bit executable|{{{windows exe notes|}}}}}</td>
 +
<td class="table-api-body-support">{{Tickcross|{{{windows 64-bit exe|}}}|Windows 64-bit executable|{{{windows exe notes|}}}}}</td>
 +
<td class="table-api-body-notes">{{#if: {{{windows exe notes|}}}|{{{windows exe notes|}}}|{{#if:{{#var:Windows 3.x native}}|''Windows 3.x version might be playable on a 64-bit OS using {{#if:{{#var:ScummVM}}|[[ScummVM]]|[https://github.com/otya128/winevdm winevdm]}}.''}}}}</td>
 +
</tr>
 +
{{#ifeq:{{{windows 32-bit exe|}}}{{{windows 64-bit exe|}}}|falsetrue|{{#vardefine:Windows 64-bit only|true}}}}
 +
{{#if:{{#var:Windows native}}|{{#ifeq:{{{windows 32-bit exe|}}}{{{windows 64-bit exe|}}}|falsefalse|[[Category:Invalid template usage (API)]]}}}}
 +
}}
 +
{{#if:{{#var:OS X}}{{{macos app notes|}}}|
 +
<tr class="template-infotable-body table-api-body-row">
 +
<th scope="row" class="table-api-body-parameter">macOS (OS X)</th><!--
 +
-->{{#if:{{#var:powerpc app}}|<td class="table-api-body-support">{{Tickcross|{{{mac os x powerpc app|}}}|Mac OS X PowerPC app|{{{macos app notes|}}}}}</td><!--
 +
-->{{#ifeq:{{{mac os x powerpc app|}}}{{{macos intel 32-bit app|}}}{{{macos 32-bit app|}}}{{{macos intel 64-bit app|}}}{{{macos 64-bit app|}}}|truefalsefalse|{{#vardefine:Warnings|true}}}}}}<!--
 +
-->{{#if:{{#var:Windows 3.x native}}|<td class="table-api-body-support">{{Tickcross-na|n/a}}</td>}}
 +
<td class="table-api-body-support">{{Tickcross|{{{macos intel 32-bit app|{{{macos 32-bit app|}}}}}}|macOS Intel 32-bit app|{{{macos app notes|}}}}}</td>
 +
<td class="table-api-body-support">{{Tickcross|{{{macos intel 64-bit app|{{{macos 64-bit app|}}}}}}|macOS Intel 64-bit app|{{{macos app notes|}}}}}</td>
 +
<td class="table-api-body-notes">{{#ifeq:{{{macos intel 32-bit app|{{{macos 32-bit app|}}}}}}{{{macos intel 64-bit app|{{{macos 64-bit app|}}}}}}|truefalse|{{#if:{{{macos app notes|}}}|{{{macos app notes|}}}|''This 32-bit-only macOS game '''does not work''' on macOS Catalina (10.15) or later.''}}|{{{macos app notes|}}}}}</td>
 +
</tr>
 +
{{#switch:{{{macos intel 32-bit app|{{{macos 32-bit app|}}}}}}{{{macos intel 64-bit app|{{{macos 64-bit app|}}}}}}
 +
|falsetrue={{#vardefine:OS X 64-bit only|true}}
 +
|truefalse
 +
|truehackable={{#vardefine:Warnings|true}}
 +
|falsefalse={{#ifeq:{{{mac os x powerpc app|}}}|true||[[Category:Invalid template usage (API)]]}}
 +
}}
 +
}}
 +
{{#if:{{#var:Linux native}}{{{linux executable notes|}}}|
 +
<tr class="template-infotable-body table-api-body-row">
 +
<th scope="row" class="table-api-body-parameter">Linux</th><!--
 +
-->{{#if:{{#var:powerpc app}}|<td class="table-api-body-support">{{Tickcross|{{{linux powerpc app|}}}|Linux PowerPC app|{{{linux executable notes|}}}}}</td>}}<!--
 +
-->{{#if:{{#var:Windows 3.x native}}|<td class="table-api-body-support">{{Tickcross-na|n/a}}</td>}}
 +
<td class="table-api-body-support">{{Tickcross|{{{linux 32-bit executable|}}}|Linux 32-bit executable|{{{linux executable notes|}}}}}</td>
 +
<td class="table-api-body-support">{{Tickcross|{{{linux 64-bit executable|}}}|Linux 64-bit executable|{{{linux executable notes|}}}}}</td>
 +
<td class="table-api-body-notes">{{{linux executable notes|}}}</td>
 +
</tr>
 +
{{#ifeq:{{{linux 32-bit executable|}}}{{{linux 64-bit executable|}}}|falsetrue|{{#vardefine:Linux 64-bit only|true}}}}
 +
{{#ifeq:{{{linux 32-bit executable|}}}{{{linux 64-bit executable|}}}|falsefalse|{{#ifeq:{{{linux powerpc app|}}}|true||[[Category:Invalid template usage (API)]]}}}}
 +
}}
 +
</table></div> }}|{{ii}} ''No API information; <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}|action=edit}} edit this page]</span> to add it.''}}{{#if: {{{vulkan support|}}} |[[Category:Invalid template usage (API)]]}}</includeonly><noinclude>{{Documentation}}</noinclude>

Revision as of 18:44, 19 November 2020

Documentation for the above template (sometimes hidden from view).
Description

The API template contains information on what APIs and additional features does the game support.


Related templates
{{API/switch Direct3D}}
{{API/switch DOS}}


Supported values

Direct3D versions

Direct3D versions Notable new features Notes
2 Initial version
3 MMX-enabled rasterizer, new RAMP color allocation algorithm[1]
5 Easier-to-use immediate mode
6 Multitexturing, bump mapping, vertex buffers, stencil planes, texture compression
7 Hardware Transformation, Clipping and Lighting (TCL/T&L)
8 Pixel Shader 1.0 & Vertex Shader 1.0
8.0a Pixel Shader 1.1, Pixel Shader 1.2, Pixel Shader 1.3
8.1 Pixel Shader 1.4 & Vertex Shader 1.1
9 Shader Model 2.0 (Pixel Shader 2.0 & Vertex Shader 2.0)
9.0b Pixel Shader 2.0b
9.0c Shader Model 3.0 (Pixel Shader 3.0 & Vertex Shader 3.0), GPGPU
9Ex Windows Graphics Foundation 1.0, DXVA 1.0 Also known as 9.L or 9.0L.
10 Shader Model 4.0, Windows Graphics Foundation 2.0, DXVA 2.0
10.1 Shader Model 4.1, Windows Graphics Foundation 2.1, DXVA 2.1
11 Shader Model 5.0, Tessellation, Multithreaded rendering, Compute shaders
11.1 Stereoscopic 3D Rendering
11.2 Tiled resources
11.3 Conservative rasterization
11.4 OS-managed shader caching, extended NV12 texture support
12 Low-level rendering API, Shader Model 5.1 and 6.0
The parameter will automatically map DirectX versions over to the appropriate Direct3D version; e.g. 8.2 is mapped to 8.1 as DirectX 8.2 did not bring a new version of Direct3D.

OpenGL versions

OpenGL versions
true
1.0
1.1
1.2
1.2.1
1.3
1.4
1.5
2.0
2.1
3.0
3.1
3.2
3.3
4.0
4.1
4.2
4.3
4.4
4.5
4.6

Vulkan versions

Vulkan versions
true
1.0
1.1

DOS modes

DOS modes Mode description
text Output drawn by characters rather than pixels.
hgc Hercules Graphics Card
cga Color Graphics Adapter
mcga Multi-Color Graphics Array
ega Enhanced Graphics Adapter
tga Tandy Graphics Adapter
vga Video Graphics Array
svga Super Video Graphics Array
The DOS row is only shown in the article when a DOS or PC booter release date row is also present in the Infobox.


Syntax
{{API
|direct3d versions      = 
|direct3d notes         = 
|directdraw versions    = 
|directdraw notes       = 
|wing                   = 
|wing notes             = 
|opengl versions        = 
|opengl notes           = 
|glide versions         = 
|glide notes            = 
|software mode          = 
|software mode notes    = 
|mantle support         = 
|mantle support notes   = 
|metal support          = 
|metal support notes    = 
|vulkan versions        = 
|vulkan notes           = 
|dos modes              = 
|dos modes notes        = 
|windows 32-bit exe     = 
|windows 64-bit exe     = 
|windows arm app        = 
|windows exe notes      = 
|mac os x powerpc app   = 
|macos intel 32-bit app = 
|macos intel 64-bit app = 
|macos arm app          = 
|macos app notes        = 
|linux powerpc app      = 
|linux 32-bit executable= 
|linux 64-bit executable= 
|linux arm app          = 
|linux 68k app          = 
|linux executable notes = 
|mac os powerpc app     =
|mac os 68k app         = 
|mac os executable notes= 
}}


Parameters marked as obsolete

Shader model

As of November 27, 2022 both shader model versions and shader model notes was marked as obsolete due to its unreliable nature, with games often providing fallbacks automatically to older versions, and irrelevance in modern gaming landscape. Support for the parameters may or may not be removed entirely in the future. The documentation is stored below for historical purposes:

Field Definition How to find Notes
Shader model versions The versions of the High-level shader language the game supports. Check the system requirements for the game. The DirectX version required can determine the Shader model used (see DirectX and associated Shader model versions). Also called the High-level shading language (HLSL) or Shader model. Only for games using Direct3D 8 or newer. Most games use just one version, but some have support for multiple.
DirectX and associated Shader model versions

For 3D games using DirectX, the Shader model field must be filled in. However, the Shader model version used may not be provided by the developer.

Unless otherwise specified, the associated Shader model version is what that version of DirectX is using.

DirectX version Associated Shader model version
8.0 1.0 and 1.1
8.0a 1.3
8.1 1.4
9.0 2.0
9.0a 2.0a
9.0b 2.0b
9.0c 3.0
10.0 4.0
10.1 4.1
11.x 5.0
12.x 5.1, 6.x


References

  1. Microsoft Stories - Microsoft Ships DirectX Version 3.0 - last accessed on 2022-11-27
    "The Direct3D API is a rendering engine for real-time 3-D graphics that integrates both a low-level API for polygon and vertex rendering, and a high-level API for manipulation of complex 3-D scenes. Direct3D now includes an MMX-enabled rasterizer for Intel’s next generation of multimedia-enabled CPUs, as well as a new RAMP color allocation algorithm that improves the visual quality of RAMP rasterization."