PCGamingWiki:Editing guide/Other information

From PCGamingWiki, the wiki about fixing PC games

The Other Information section hold all information and downloads that are not critically essential, but useful all the same. It acts as a sister section to Essential improvements.

The API and Middleware tables also reside here. Note that both tables are always placed at the top of the section.

General

All guidelines that apply to to the Essential improvements section apply here as well.

Some examples of what would be placed in this section:

  • General console commands list
  • Steps to add alternate OS support
  • WINE setup tips
  • Cosmetic/enhanced visuals mods
  • Downgrading the game
  • Anything that would not fit in either the Essential improvements or Issues Fixed sections

API table

Template documentation

Syntax

{{API
|direct3d versions      = 
|direct3d notes         = 
|directdraw versions    = 
|directdraw 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 support         = 
|vulkan support notes   = 
|dos modes              = 
|dos modes notes        = 
|shader model versions  = 
|shader model notes     = 
|64-bit executable      = 
|64-bit executable notes= 
}}

Example

Technical specs Supported Notes
Direct3D 6, 7, 8, 9, 10, 11
DirectDraw 7
OpenGL 2.0, 4.4 OS X and Linux only.
Glide 2.4, 3
Software renderer
Mantle support
Metal support
Vulkan support
DOS video modes CGA, VGA, SVGA
Shader Model support 1.1, 3, 5
64-bit executable
OS X and Linux only.

The first major table of the section, the API table tracks all the graphics APIs and rendering modes available for a game.

General rules

  • Fill in the relevant fields only. Leave the rest blank.

Field breakdown

Field Definition How to find Notes
Direct3D versions The versions of Direct3D the game can be rendered in. Check the minimum systems requirements for the game. The DirectX version required is what the game is using. Alternatively, some games have multiple renderers available and can be toggled in the video settings. Finally, some screen recording tools (like Bandicam) have an API indicator, stating the exact version currently being used. Also called D3D. Can only be found in Windows-based games. Newer versions of the API are restricted to newer versions of Windows (Direct3D 10 requires Vista or newer).
DirectDraw versions The versions of DirectDraw the game can be rendered in. Check the minimum systems requirements for the game. The DirectX version required is what the game is using. Alternatively, some games have multiple renderers available and can be toggled in the video settings. Finally, some screen recording tools (like Bandicam) have an API indicator, stating if the API is being used in general. Also called DDraw. DirectDraw was deprecated in DirectX 8, making it a legacy API. The latest version available is 7. Very rare to find any modern game still using the API. Can only be found in Windows-based games.
OpenGL versions The versions of OpenGL the game can be rendered in. Check the minimum systems requirements for the game. Sometimes the OpenGL version required is stated. If not, checking the latest OpenGL version supported by the GPU required can give an accurate ballpark figure. Alternatively, some games have multiple renderers available and can be toggled in the video settings. Finally, some screen recording tools (like Bandicam) have an API indicator, stating if the API is being used in general. Harder to determine compared to the other APIs. Mainly found in Mac OS, OS X, and Linux games, but can sometimes be found on Windows.
Glide versions The versions of Glide the game can be rendered in. Check the minimum systems requirements for the game. Sometimes the Glide version required is stated. If not, checking the game installation folder for the DLL file can give the major version used (glide.dll=Glide 2.1, glide2x.dll=Glide 2.4, and glide3x.dll=Glide 3.0). Alternatively, some games have multiple renderers available and can be toggled in the video settings. Legacy API only found in early 3D games (1996-early 2000s). The latest version available is 3.10.00.30303. Some games refuse to run or provide higher quality visuals without a Glide-enabled GPU. Use a Glide wrapper like nGlide to bypass these restrictions.
Software mode The game has a software renderer available (i.e. 3D rendering is all handled by the CPU, instead of the GPU). Check the video settings for a renderer toggle or option along the lines of "hardware acceleration", "hardware rendering", or "Software mode". Usually found in early 3D games (1996-early 2000s). If the software mode uses another API (ex. DirectDraw), make note of it in the respective fields. Being able to toggle between software and hardware-rendered cursors does not count. Leave the field blank if a software mode is not available.
Mantle support The game supports the Mantle API. Check the video settings for a renderer toggle. The developer's official website, game feature list, or game manual may also state it. New API currently in beta, making support very limited. Only available for AMD GPUs. Leave the field blank if Mantle support is not available.
Metal support The game supports the Metal API. Check the video settings for a renderer toggle. The developer's official website, game feature list, or game manual may also state it. Only available for macOS (OS X). Leave the field blank if Metal support is not available.
Vulkan support The game supports the Vulkan API. Check the video settings for a renderer toggle. The developer's official website, game feature list, or game manual may also state it. New API that was recently released, making support very limited. Considered the successor of OpenGL and is equivalent to DirectX 12. Leave the field blank if Vulkan support is not available.
DOS modes The display modes available for a game. Check the systems requirements for the game. Can also be found on the retail box. Only for games with a DOS release or version. Some display modes may be exclusive to certain releases.
Shader model versions The versions of the High-level shader language the game supports. Check the systems 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.
64-bit executable A 64-bit executable (or binary) is available. Check the systems requirements for the game. Sometimes a 64-bit OS is required. Alternatively, running the game on a 64-bit system and checking the game process in the Task Manager is a reliable method (32-bit applications will have a tag next to their process, 64-bit apps will not). 64-bit applications started appearing around the mid-2000s, but did not become more commonplace until a few years ago. Most modern AAA releases require 64-bit OSes. The field is not applicable for DOS-based games.

DirectX OpenGL equivalents

For DirectX 12.x, OpenGL has no equivalent version. The closest equivalents available are Mantle and Vulkan, both entirely separate APIs.

For games using both DirectX and OpenGL, it may be difficult to determine what version of OpenGL the game is using. The developer may not provide a specific version.

That being said, knowing just the DirectX version used can give a rough estimate on the equivalent OpenGL version.

DirectX version Equivalent OpenGL version
9.0x 2.x
10.x 3.x
11.x 4.x

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

Middleware table

Template documentation

Syntax

{{Middleware
|physics          = 
|physics notes    = 
|audio            = 
|audio notes      = 
|interface        = 
|interface notes  = 
|input            = 
|input notes      = 
|cutscenes        = 
|cutscenes notes  = 
|multiplayer      = 
|multiplayer notes= 
}}

Example

Middleware Notes
Physics PhysX Lacks GPU acceleration on Linux.
Audio FMOD
Interface Scaleform
Input Object Oriented Input System (OIS)
Cutscenes Bink Video
Multiplayer Punkbuster, Steamworks

The second major table of the section, the Middleware table lists all the known 3rd party middleware (i.e. not a proprietary in-house solution, integrated as part of the game engine or as part of a graphics API) included with the game.

There are six major types of middleware relevant to the wiki that are tracked:

Middleware type Definition Examples
Physics Middleware that simulates physics against objects in-game. Bullet Physics Engine, Havok, PhysX
Audio Middleware that provides support for audio playback. FMOD, Miles Sound System, Wwise
Interface Middleware that assists with rendering or the design of in-game user interfaces. Flash, FreeType 2, Scaleform
Input Middleware that provides support for or assists with input systems/controls (keyboard, mouse, gamepads, etc.) Object Oriented Input System (OIS)
Cutscenes Middleware that provides cutscene or pre-recorded video playback support. Bink Video, Smacker
Multiplayer Middleware that provides the base of multiplayer support or assists with some other aspect relating to it (anti-cheat, matchmaking, etc.) GameSpy, PunkBuster, Steamworks

Known middleware DLL files

One method of detecting what middleware a game uses is looking through its files for specific DLL files.

This is a list of all the DLL files associated with middleware:

Physics

DLL file Associated middleware
APEX_*.dll, PhysX*.dll PhysX
FarseerPhysics.dll Farseer Physics Engine
Newton.dll Newton Dynamics
ode.dll Open Dynamics Engine

Audio

DLL file Associated middleware
bass.dll, bass*.dll BASS
fmod.dll, fmodex.dll FMOD
FonixTtsDtSimple*.dll Fonix TTS (Text to Speech)
irrKlang.dll irrKlang
mss32.dll Miles Sound System
OpenAL32.dll OpenAL

Interface

DLL file Associated middleware
CEGUI*.dll Crazy Eddie's GUI System (CEGUI)
RocketCore.dll, RocketControls.dll libRocket
wxmsw*.dll wxWidgets

Input

DLL file Associated middleware
OIS.dll Object Oriented Input System (OIS)
openvr_api.dll OpenVR
sixense.dll Sixense Core API

Cutscenes

DLL file Associated middleware
binkw32.dll Bink Video
Smackw32.dll Smacker
SwiffPlayer.dll Swiff Player

Multiplayer

DLL file Associated middleware
CommunityExpress.dll, CommunityExpressSW.dll Community Express SDK
pb*.dll PunkBuster