GameINI: Difference between revisions

Jump to navigation Jump to search
4,003 bytes added ,  29 January 2023
→‎[Video_Enhancements]: Update for changes in forced filtering
(→‎[Video_Enhancements]: Update for changes in forced filtering)
(38 intermediate revisions by 9 users not shown)
Line 1: Line 1:
You can configure settings per game through their GameINI. GameINI is a plain text file with game's GameID as its file name and INI as its file extension. It can be retrieved from game's properties, right-click the game from game list then choose '''Properties''' from the context menu, then click on the '''Edit Config''' button and edit the empty text file that pops up. When editing, carefully arranged line, headings, and capitalization are important.
You can configure settings per game through their GameINI. GameINI is a plain text file with game's [[GameIDs|GameID]] as its file name and INI as its file extension. It can be retrieved from game's properties; right-click the game from game list then choose '''Properties''' from the context menu, then click on the '''Edit Config''' button and edit the empty text file that pops up. When editing, carefully arranged line, headings, and capitalization are important.


For controller settings, go to [[GameINI (Controller Settings)]].
For controller settings, go to [[GameINI (Controller Settings)]].
Line 18: Line 18:


== [Core] ==
== [Core] ==
The following entries go under [Core] section of the GameINI.
The following entries go under [Core] (or [Dolphin.Core]) section of the GameINI.


=== Dual Core ===
=== Dual Core ===
Line 28: Line 28:
*<code>GFXBackend = OGL</code> to set the video backend to OpenGL.
*<code>GFXBackend = OGL</code> to set the video backend to OpenGL.
*<code>GFXBackend = Vulkan</code> to set the video backend to Vulkan.
*<code>GFXBackend = Vulkan</code> to set the video backend to Vulkan.
*<code>GFXBackend = Metal</code> to set the video backend to Metal (macOS only).
*<code>GFXBackend = Software Renderer</code> to set the video backend to Software.
*<code>GFXBackend = Software Renderer</code> to set the video backend to Software.
*<code>GFXBackend = Null</code> to set the video backend to Null(no output).
*<code>GFXBackend = Null</code> to set the video backend to Null(no output).
Line 33: Line 34:
=== CPU Emulator Engine ===
=== CPU Emulator Engine ===
*<code>CPUCore = 0</code> to set the CPU emulator engine to "Interpreter".
*<code>CPUCore = 0</code> to set the CPU emulator engine to "Interpreter".
*<code>CPUCore = 1</code> to set the CPU emulator engine to "JIT".
*<code>CPUCore = 1</code> to set the CPU emulator engine to "JIT x64".
*<code>CPUCore = 2</code> to set the CPU emulator engine to "JITIL". Removed (will do nothing) in {{revision|5.0-3792}} and later.
*<code>CPUCore = 2</code> to set the CPU emulator engine to "JITIL". Removed (will do nothing) in {{revision|5.0-3792}} and later.
*<code>CPUCore = 4</code> to set the CPU emulator engine to "JIT ARM64".
*<code>CPUCore = 5</code> to set the CPU emulator engine to "Cached Interpreter".
*<code>CPUCore = 5</code> to set the CPU emulator engine to "Cached Interpreter".


Line 44: Line 46:


If DSP HLE is disabled, DSL LLE will be used, it will use either DSP LLE recompiler or DSP LLE interpreter based on your general Dolphin settings, or see [[#DSP Emulator Engine]]. More information at [[Audio Emulation]].
If DSP HLE is disabled, DSL LLE will be used, it will use either DSP LLE recompiler or DSP LLE interpreter based on your general Dolphin settings, or see [[#DSP Emulator Engine]]. More information at [[Audio Emulation]].
=== DSP LLE on Dedicated Thread ===
Will do nothing in {{revision|4.0-4488}} and later.
*<code>DSPThread = True</code> or <code>False</code> to enable and disable the "DSP LLE on Dedicated Thread" respectively.


=== Emulation Speed (formerly Framelimit) ===
=== Emulation Speed (formerly Framelimit) ===
Line 75: Line 73:
Implemented in {{revision|5.0-2302}} and later.
Implemented in {{revision|5.0-2302}} and later.
*<code>OverclockEnable = True</code> or <code>False</code> to enable and disable "CPU Overclock" respectively.
*<code>OverclockEnable = True</code> or <code>False</code> to enable and disable "CPU Overclock" respectively.
*<code>Overclock = 1.0</code> translates to "100%" CPU clock, greater in value is considered overclocking and smaller in value is considered underclocking.
*<code>Overclock = 1.0</code> translates to "100%" CPU clock. The value of Overclock can be any float, and it acts as a multiplier; 0.5 is 50%, 1.0 is 100%, 1.5 is 150%, 2.0 is 200%, etc.


=== Synchronize GPU Thread ===
=== Synchronize GPU Thread ===
SyncGPU is a speed hack for dual core mode to allow games to get around dual core glitches without having to use single core. Usually not much faster than single core mode.
SyncGPU is a speed hack for dual core mode to allow games to get around dual core glitches without having to use single core. Usually not much faster than single core mode.
*<code>SyncGPU = True</code> or <code>False</code> to enable and disable the "Synchronize GPU thread" respectively.
*<code>SyncGPU = True</code> or <code>False</code> to enable and disable the "Synchronize GPU thread" respectively. Even with this setting set to false, Dolphin will still synchronize the threads during idle skipping.
On Android, the Synchronize GPU thread setting instead provides three choices. To set the same configurations through the GameINI (which also works on non-Android versions) use:
*<code>SyncGPU = True</code> and <code>SyncOnSkipIdle = True</code> for "Always"
*<code>SyncGPU = False</code> and <code>SyncOnSkipIdle = True</code> for "On idle skipping"
*<code>SyncGPU = False</code> and <code>SyncOnSkipIdle = False</code> for "Never"
 
=== GPU Overclock ===
*<code>SyncGpuOverclock= 1.0</code> translates to "100%" GPU clock. The value of Overclock can be any float, and it acts as a multiplier; 0.5 is 50%, 1.0 is 100%, 1.5 is 150%, 2.0 is 200%, etc. This setting has an effect only if SyncGPU is enabled or Dual Core is disabled. <!-- Deterministic dual core might work too -->


=== Speed Up Disc Transfer Rate ===
=== Speed Up Disc Transfer Rate ===
Line 86: Line 91:


=== Dualcore Determinism ===
=== Dualcore Determinism ===
*<code>GPUDeterminismMode = fake-completion</code> or <code>none</code> to enable and disable "Deterministic dual core" respectively.
*<code>GPUDeterminismMode = fake-completion</code> or <code>none</code> to enable and disable "Deterministic dual core" respectively. <code>GPUDeterminismMode = auto</code> will only enable "Deterministic dual core" during Netplay or movie recording/playback.


=== Memory Management Unit (MMU) ===
=== Memory Management Unit (MMU) ===
Line 109: Line 114:
  4 = Italian
  4 = Italian
  5 = Dutch
  5 = Dutch
=== GameCube Slots ===
Implemented in {{revision|5.0-15842}}
*<code>SlotA = 8</code> for GCI Folder. Choose a number from below list to change what is in Slot A.
*<code>SlotB = 255</code> for Nothing. Choose a number from below list to change what is in Slot B.
0 = Dummy
1 = MemoryCard
4 = Microphone
7 = Gecko
8 = GCI Folder
9 = Advance Game Port
255 = Nothing
Set the full path to the memory card file.
*<code>MemcardAPath = pathtoslotAfile</code>
*<code>MemcardAPath = pathtoslotBfile</code>
=== GameCube Serial Port ===
Implemented in {{revision|5.0-15842}}
*<code>SerialPort1 = 255</code> for nothing. Choose a number below which type of Broadband Adapter you are using.
5  = Broadband Adapter (TAP)
10 = Broadband Adapter (XLink Kai)
12 = Broadband Adapter (Built In)
*<code>BBA_MAC = MAC</code> to set the Ethernet MAC address.
*<code>BBA_XLINK_IP = 127.0.0.1</code> to set the IP address of the PC/device where XLink Kai is running.
*<code>BBA_BUILTIN_DNS = IPADDRESS</code> the DNS server to use for the builtin adapter
=== Wii Configuration ===
*<code>PAL60 = True</code> to enable EuRGB60 or <code>False</code> to disable.
*<code>WiiSDCard = True</code> to enable Wii SD/SDHC Card or <code>False</code> to disable.
*<code>WiiSDCardAllowWrites = True</code> to allow SDCard writes or <code>False</code> to disable.
== [Controls] ==
See [[GameINI (Controller Settings)]]


== [Video_Settings] ==
== [Video_Settings] ==
The following entries go under [Video_Settings] section of the GameINI.
The following entries go under [Video_Settings] (or [Graphics.Settings]) section of the GameINI.


=== Internal Resolution ===
=== Internal Resolution ===
Line 119: Line 161:
=== Shader Compilation ===
=== Shader Compilation ===
*<code>ShaderCompilationMode = 0</code>
*<code>ShaderCompilationMode = 0</code>
<pre>0 = Synchronous
<pre>0 = Specialized (Default)
1 = Synchronous (Ubershaders)
1 = Exclusive Ubershaders
2 = Asynchronous (Ubershaders)
2 = Hybrid Ubershaders
3 = Asynchronous (Skip Drawing)</pre>
3 = Skip Drawing</pre>


=== Compile Shaders Before Starting ===
=== Compile Shaders Before Starting ===
Line 132: Line 174:
*<code>SafeTextureCacheColorSamples = 512</code> -> Texture Cache Accuracy "Middle", the middle option on the slider.
*<code>SafeTextureCacheColorSamples = 512</code> -> Texture Cache Accuracy "Middle", the middle option on the slider.
*<code>SafeTextureCacheColorSamples = 128</code> -> Texture Cache Accuracy "Fast", the right most option on the slider.
*<code>SafeTextureCacheColorSamples = 128</code> -> Texture Cache Accuracy "Fast", the right most option on the slider.
=== GPU Texture Decoding ===
*<code>EnableGPUTextureDecoding = True</code> or <code>False</code> to enable and disable "GPU Texture Decoding" respectively.


=== Aspect Ratio ===
=== Aspect Ratio ===
Line 164: Line 209:
=== Load Custom Textures ===
=== Load Custom Textures ===
*<code>HiresTextures = True</code> or <code>False</code> to enable and disable "Load Custom Textures" respectively.
*<code>HiresTextures = True</code> or <code>False</code> to enable and disable "Load Custom Textures" respectively.
=== Prefetch Custom Textures ===
*<code>CacheHiresTextures = True</code> or <code>False</code> to enable and disable "Caching custom textures to RAM on startup".


== [Video_Enhancements] ==
== [Video_Enhancements] ==
The following entries go under [Video_Enhancements] section of the GameINI.
The following entries go under [Video_Enhancements] (or [Graphics.Enhancements]) section of the GameINI.


=== Anisotropic Filtering ===
=== Anisotropic Filtering ===
Line 173: Line 221:


=== Force Texture Filtering ===
=== Force Texture Filtering ===
As of {{revision|5.0-18025}} the option changed. Valid values are: <code>2</code> for linear, <code>1</code> for nearest and <code>0</code> for no filtering.
*<code>ForceTextureFiltering = 2</code> will set forced linear filtering.
For older builds, which at the time of writing includes beta 5.0-17995, use the following.
*<code>ForceFiltering = True</code> or <code>False</code> to enable and disable "Force Texture Filtering" respectively.
*<code>ForceFiltering = True</code> or <code>False</code> to enable and disable "Force Texture Filtering" respectively.


=== Post-processing Effects ===
=== Post-processing Effects ===
This option will only work with the OpenGL and Vulkan backend. Use the names listed in the drop down menu of the option, below we use sepia as an example.
This option will only work with the OpenGL and Vulkan backend on versions before {{revision|5.0-9638}}. Use the names listed in the drop down menu of the option, below we use sepia as an example.
*<code>PostProcessingShader = sepia</code>, also you can put the name of your preferred shader here.
*<code>PostProcessingShader = sepia</code>, also you can put the name of your preferred shader here.


Line 189: Line 241:


== [Video_Hacks] ==
== [Video_Hacks] ==
The following entries go under [Video_Hacks] section of the GameINI.
The following entries go under [Video_Hacks] (or [Graphics.Hacks]) section of the GameINI.


=== EFB Copies ===
=== EFB Copies ===
Line 214: Line 266:
===Immediate XFB ===
===Immediate XFB ===
*<code>ImmediateXFBenable = True</code> or <code>False</code> to enable and disable "Immediate XFB" respectively.
*<code>ImmediateXFBenable = True</code> or <code>False</code> to enable and disable "Immediate XFB" respectively.
=== Skip Presenting Duplicate Frames ===
*<code>SkipDuplicateXFBs = True</code> or <code>False</code> to enable and disable "Skip Presenting Duplicate Frames" respectively.


=== Defer EFB copies to RAM ===
=== Defer EFB copies to RAM ===
Line 220: Line 275:
=== Defer EFB Cache Invalidation ===
=== Defer EFB Cache Invalidation ===
*<code>EFBAccessDeferInvalidation = True</code> or <code>False</code> to enable and disable "Defer EFB Cache Invalidation" respectively.
*<code>EFBAccessDeferInvalidation = True</code> or <code>False</code> to enable and disable "Defer EFB Cache Invalidation" respectively.
=== Manual Texture Sampling ===
*<code>FastTextureSampling = True</code> or <code>False</code> to disable and enable "Manual Texture Sampling" respectively. Beware that it has the opposite behavior of the GUI option!


== [Video_Hardware] ==
== [Video_Hardware] ==
The following entries go under [Video_Hardware] section of the GameINI.
The following entries go under [Video_Hardware] (or [Graphics.Hardware]) section of the GameINI.


=== V-Sync ===
=== V-Sync ===
Line 228: Line 286:


== [Video_Stereoscopy] ==
== [Video_Stereoscopy] ==
The following entries go under [Video_Stereoscopy] section of the GameINI.
The following entries go under [Video_Stereoscopy] (or [Graphics.Stereoscopy] although that is currently bugged, see [https://bugs.dolphin-emu.org/issues/12510?next_issue_id=12509#note-1 here]) section of the GameINI.


=== Stereoscopic 3D Offset Settings ===
=== Stereoscopic 3D Offset Settings ===
Line 245: Line 303:


== [DSP] ==
== [DSP] ==
The following entries go under [DSP] section of the GameINI.
The following entries go under [DSP] (or [Dolphin.DSP]) section of the GameINI.


=== Audio Backend ===
=== Audio Backend ===
Line 254: Line 312:
*<code>Backend = OpenAL</code>
*<code>Backend = OpenAL</code>
*<code>Backend = OpenSLES</code>
*<code>Backend = OpenSLES</code>
*<code>Backend = WASAPI (Exclusive mode)</code>
*<code>Backend = WASAPI (Exclusive Mode)</code>
*<code>Backend = XAudio2</code> This option was removed in {{revision|5.0-10950}} and later [https://dolphin-emu.org/blog/2019/11/07/dolphin-progress-report-october-2019/#50-10950-remove-xaudio2-by-ligfx for many reasons], Dolphin will try to use Cubeb instead.
*<code>Backend = XAudio2</code> This option was removed in {{revision|5.0-10950}} and later [https://dolphin-emu.org/blog/2019/11/07/dolphin-progress-report-october-2019/#50-10950-remove-xaudio2-by-ligfx for many reasons], Dolphin will try to use Cubeb instead.


Line 279: Line 337:
  8 = Traditional Chinese
  8 = Traditional Chinese
  9 = Korean
  9 = Korean
== [Dolphin.BluetoothPassthrough] ==
===Enable===
*<code>Enabled = True</code> or <code>False</code> to Enable or Disable bluetooth passthrough.
== See also ==
*[https://forums.dolphin-emu.org/Thread-unofficial-howto-using-gameini-settings-per-game Forum Thread]


[[Category:Tutorials]]
[[Category:Tutorials]]

Navigation menu