![]() |
Progress Continues
We've already had 21610 updates since Dolphin 5.0. Keep up with Dolphin's continuing progress through the Dolphin Blog: February, March, and April 2024 Dolphin Progress Report. |
![]() |
The Dolphin Emulator Wiki needs your help! Dolphin can play thousands of games, and changes are happening all the time. Help us keep up! Join in and help us make this the best resource for Dolphin. |
GameINI: Difference between revisions
No edit summary |
m (→Texture Cache Accuracy: General maintenance with AutoWikiBrowser) |
||
(93 intermediate revisions by 15 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 [[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. | ||
These are settings you can | |||
* Enable Dual Core - controls [[# | For controller settings, go to [[GameINI (Controller Settings)]]. | ||
* Enable MMU - controls [[#MMU]] | |||
== Properties Window == | |||
These are settings you can update GameINI directly from the game properties window. | |||
* Enable Dual Core - controls [[#Dual Core]] | |||
* Enable MMU - controls [[#Memory Management Unit (MMU)]] | |||
* Skip DCBZ clearing - controls [[#DCBZ]] | * Skip DCBZ clearing - controls [[#DCBZ]] | ||
* Enable FPRF - controls [[#]] | * Enable FPRF - controls [[#Floating-point Result Flag]] | ||
* Synchronize GPU thread - controls [[# | * Synchronize GPU thread - controls [[#Synchronize GPU Thread]] | ||
* Speed up Disc Transfer Rate - controls [[# | * Speed up Disc Transfer Rate - controls [[#Speed Up Disc Transfer Rate]] | ||
* DSP HLE emulation (fast) - controls [[# | * DSP HLE emulation (fast) - controls [[#DSP HLE]] | ||
* Stereoscopy Depth Percentage - controls StereoDepthPercentage in [[#Stereoscopic 3D Settings]] | * Deterministic dual core - controls [[#Dualcore Determinism]] | ||
* Convergence - controls StereoConvergence in [[#Stereoscopic 3D Settings]] | * Stereoscopy Depth Percentage - controls StereoDepthPercentage in [[#Stereoscopic 3D Offset Settings]] | ||
* Monoscopic Shadows - controls StereoEFBMonoDepth in [[#Stereoscopic 3D Settings | * Convergence - controls StereoConvergence in [[#Stereoscopic 3D Offset Settings]] | ||
* Monoscopic Shadows - controls StereoEFBMonoDepth in [[#Stereoscopic 3D Offset Settings]] | |||
== [Core] == | == [Core] == | ||
The following | The following entries go under [Core] (or [Dolphin.Core]) section of the GameINI. | ||
=== | === Dual Core === | ||
*<code>CPUThread = True</code> or <code>False</code> to enable and disable "Dual Core" mode respectively. | *<code>CPUThread = True</code> or <code>False</code> to enable and disable "Dual Core" mode respectively. | ||
=== | === Graphics Backend === | ||
*<code>GFXBackend = D3D</code> to set the video backend to | *<code>GFXBackend = D3D</code> to set the video backend to Direct3D 11. | ||
*<code>GFXBackend = OGL</code> to set the video backend to OpenGL | *<code>GFXBackend = D3D12</code> to set the video backend to Direct3D 12. Direct3D 12 was removed in {{revision|5.0-3774}} then reintroduced in {{revision|5.0-9878}}, this setting will do nothing during this interval. | ||
*<code>GFXBackend = OGL</code> to set the video backend to OpenGL. | |||
*<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 = Null</code> to set the video backend to Null(no output). | |||
=== CPU Emulator Engine === | |||
*<code>CPUCore = 0</code> to set the CPU emulator engine to "Interpreter". | |||
*<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 = 4</code> to set the CPU emulator engine to "JIT ARM64". | |||
*<code>CPUCore = 5</code> to set the CPU emulator engine to "Cached Interpreter". | |||
=== Floating-point Result Flag === | |||
*<code>FPRF = True</code> or <code>False</code> to enable and disable "Floating-point Result Flag" calculation respectively. | |||
=== DSP HLE === | |||
*<code>DSPHLE = True</code> or <code>False</code> to enable and disable "DSP HLE" respectively. | |||
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]]. | |||
=== Emulation Speed (formerly Framelimit) === | |||
*<code>EmulationSpeed = 0.000000000</code> will set it to "unlimited". | |||
*<code>EmulationSpeed = 0.100000001</code> will set it to "10%". | |||
*<code>EmulationSpeed = 0.200000003</code> will set it to "20%". | |||
*<code>EmulationSpeed = 0.300000012</code> will set it to "30%". | |||
*<code>EmulationSpeed = 0.400000006</code> will set it to "40%". | |||
*<code>EmulationSpeed = 0.500000000</code> will set it to "50%". | |||
*<code>EmulationSpeed = 0.600000024</code> will set it to "60%". | |||
*<code>EmulationSpeed = 0.699999988</code> will set it to "70%". | |||
*<code>EmulationSpeed = 0.800000012</code> will set it to "80%". | |||
*<code>EmulationSpeed = 0.900000036</code> will set it to "90%". | |||
*<code>EmulationSpeed = 1.00000000</code> will set it to "100%", as in normal emulation speed. | |||
*<code>EmulationSpeed = 1.10000002</code> will set it to "110%". | |||
*<code>EmulationSpeed = 1.20000005</code> will set it to "120%". | |||
*<code>EmulationSpeed = 1.30000007</code> will set it to "130%". | |||
*<code>EmulationSpeed = 1.39999998</code> will set it to "140%". | |||
*<code>EmulationSpeed = 1.50000000</code> will set it to "150%". | |||
*<code>EmulationSpeed = 1.60000002</code> will set it to "160%". | |||
*<code>EmulationSpeed = 1.70000005</code> will set it to "170%". | |||
*<code>EmulationSpeed = 1.80000007</code> will set it to "180%". | |||
*<code>EmulationSpeed = 1.89999998</code> will set it to "190%". | |||
*<code>EmulationSpeed = 2.00000000</code> will set it to "200%". | |||
=== CPU Overclock === | |||
Implemented in {{revision|5.0-2302}} and later. | |||
*<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. 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. | |||
=== Memory Override === | |||
*<code> | *<code>RAMOverrideEnable = True</code> or <code>False</code> to enable and disable "Emulate Memory Size Override" respectively. | ||
*<code> | *<code>MEM1Size = 0x01800000</code> size in bytes in hex or decimal. | ||
*<code> | *<code>MEM2Size = 0x04000000</code> size in bytes in hex or decimal. | ||
=== | === Synchronize GPU Thread === | ||
*<code> | 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> | *<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. | ||
*<code> | 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, since {{revision|5.0-683}}, if Dual Core is disabled. <!-- Deterministic dual core might work too --> | |||
=== | === Speed Up Disc Transfer Rate === | ||
*<code> | Accelerates the emulated disc speed, removing any loading emulation. | ||
*<code>FastDiscSpeed = True</code> or <code>False</code> to enable and disable the "Speed up Disc Transfer Rate" respectively. | |||
=== Dualcore Determinism === | |||
*<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) === | ||
*<code> | *<code>MMU = True</code> or <code>False</code> to enable and disable the "Memory Management Unit" respectively. | ||
=== | === DCBZ === | ||
Will do nothing in {{revision|5.0-8482}} and later. | |||
*<code> | *<code>DCBZ = True</code> or <code>False</code> to enable and disable "Skip DCBZ Clearing" respectively. | ||
=== | === Progressive Scan === | ||
*<code>ProgressiveScan = True</code> or <code>False</code> to enable and disable "Progressive Scan" respectively. | |||
*<code> | |||
=== | === GameCube Language === | ||
*<code> | Implemented in {{revision|5.0-2023}} and later. | ||
*<code>GameCubeLanguage = 0</code> for English or Japanese, depending on the region of the console/game. | |||
=== | Choose a number for the language you want from the list below: | ||
0 = English/Japanese | |||
*<code> | 1 = German | ||
2 = French | |||
3 = Spanish | |||
4 = Italian | |||
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> | |||
Set the full path to the GCI Folder (since {{revision|5.0-17900}}). | |||
*<code>GCIFolderAPath = gcifolderApath</code> | |||
*<code>GCIFolderBPath = gcifolderBpath</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> | |||
*<code>BBA_XLINK_IP = 127.0.0.1</code> to set the IP address of the PC/device where XLink Kai is running. | |||
*<code> | |||
*<code>BBA_BUILTIN_DNS = IPADDRESS</code> the DNS server to use for the builtin adapter | |||
*<code> | |||
=== | === Wii Configuration === | ||
*<code>PAL60 = True</code> to enable EuRGB60 or <code>False</code> to disable. | |||
*<code> | *<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] (or [Graphics.Settings]) section of the GameINI. | |||
=== | === Internal Resolution === | ||
Values starting from 0 represent the drop down order in the list that dolphin uses. | |||
*<code>InternalResolution = 0</code> | |||
To increase the maximum available resolutions in the UI, you can set: | |||
*<code>MaxInternalResolution = 9</code> | |||
(the default is 8) | |||
=== Shader Compilation === | |||
*<code>ShaderCompilationMode = 0</code> | |||
<pre>0 = Specialized (Default) | |||
1 = Exclusive Ubershaders | |||
2 = Hybrid Ubershaders | |||
3 = Skip Drawing</pre> | |||
=== Compile Shaders Before Starting === | |||
*<code>WaitForShadersBeforeStarting = True</code> or <code>False</code> to enable and disable "Compile Shaders Before Starting" respectively. | |||
=== Texture Cache Accuracy === | |||
Controls the "Texture Cache Accuracy" setting, shown as a slider in the GUI. | Controls the "Texture Cache Accuracy" setting, shown as a slider in the GUI. | ||
*<code>SafeTextureCacheColorSamples = 0</code> | *<code>SafeTextureCacheColorSamples = 0</code> → Texture Cache Accuracy "Safe", the left most option on the slider. | ||
*<code>SafeTextureCacheColorSamples = 512</code> | *<code>SafeTextureCacheColorSamples = 512</code> → Texture Cache Accuracy "Middle", the middle option on the slider. | ||
*<code>SafeTextureCacheColorSamples = 128</code> | *<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. | |||
*<code> | |||
=== | === Aspect Ratio === | ||
Values starting from 0 represent the drop down order in the list that dolphin uses. | |||
*<code> | *<code>AspectRatio = 0</code> is auto, assigned based on what the emulated console indicates. | ||
*<code>AspectRatio = 1</code> to force the aspect ratio to 16:9. | |||
*<code>AspectRatio = 2</code> to force the aspect ratio to 4:3. | |||
*<code>AspectRatio = 3</code> to set the aspect ratio to "Stretch to window". | |||
=== | === Widescreen Hack === | ||
Separates the aspect ratio rendered by the game from the one displayed in the game window. Use [[#Aspect Ratio]] options in addition to this setting. | |||
*<code>MSAA = 0</code> will set it to the top of the list value which is | *<code>wideScreenHack = True</code> or <code>False</code> to enable and disable the "Widescreen Hack" respectively. | ||
=== Anti-Aliasing === | |||
*<code>MSAA = 0</code> will set it to the top of the list value which is "None". "2x", "4x", "8x" samples would need <code>2</code>, <code>4</code>, <code>8</code> to be used respectively. | |||
*<code>SSAA = True</code> or <code>False</code> will toggle between "SSAA" and "MSAA" respectively. The amount of samples used for SSAA will depend on the MSAA value above. | |||
=== External Frame Buffer === | === External Frame Buffer === | ||
Will do nothing in {{revision|5.0-5874}} and later. Use [[#XFB copies]] and [[#Immediate XFB]] instead. | |||
*<code>UseXFB = True</code> or <code>False</code> to enable and disable "External Frame Buffer" respectively. Virtual or Real will be set according to what you have set it last at the general settings. To control it use together the line below: | *<code>UseXFB = True</code> or <code>False</code> to enable and disable "External Frame Buffer" respectively. Virtual or Real will be set according to what you have set it last at the general settings. To control it use together the line below: | ||
*<code>UseRealXFB = True</code> or <code>False</code> to enable "Real | *<code>UseRealXFB = True</code> or <code>False</code> to enable "Real XFB" or "Virtual XFB" respectively. | ||
=== Fast Depth Calculation === | === Fast Depth Calculation === | ||
Line 127: | Line 218: | ||
*<code>EnablePixelLighting = True</code> or <code>False</code> to enable and disable "Per-Pixel Lighting" respectively. | *<code>EnablePixelLighting = True</code> or <code>False</code> to enable and disable "Per-Pixel Lighting" respectively. | ||
=== | === Disable Fog === | ||
*<code> | *<code>DisableFog = True</code> or <code>False</code> to enable and disable "Disable Fog" respectively. | ||
=== Load Custom Textures === | |||
*<code>HiresTextures = True</code> or <code>False</code> to enable and disable "Load Custom Textures" respectively. | |||
=== | === Prefetch Custom Textures === | ||
*<code> | *<code>CacheHiresTextures = True</code> or <code>False</code> to enable and disable "Caching custom textures to RAM on startup". | ||
=== | === Crop to 4:3 or 16:9 === | ||
*<code> | *<code>Crop = False</code> or <code>True</code> to crop the picture from native aspect ration to 4:3 or 16:9. | ||
=== | === Cull Vertices on the CPU === | ||
*<code> | *<code>CPUCull = True</code> or <code>False</code> to enable and disable "Cull Vertices on the CPU" respectively. | ||
== [Video_Enhancements] == | == [Video_Enhancements] == | ||
The following entries go under [Video_Enhancements] (or [Graphics.Enhancements]) section of the GameINI. | |||
=== Anisotropic Filtering === | === Anisotropic Filtering === | ||
Values starting from 0 represent the drop down order in the list that dolphin uses. | Values starting from 0 represent the drop down order in the list that dolphin uses. | ||
*<code>MaxAnisotropy = 0</code> will set it to the top of the list value of 1x equivalent of disabling it. 2x, 4x, 8x, 16x would need 1,2,3,4 to be used respectively | *<code>MaxAnisotropy = 0</code> will set it to the top of the list value of 1x equivalent of disabling it. 2x, 4x, 8x, 16x would need <code>1</code>, <code>2</code>, <code>3</code>, <code>4</code> to be used respectively. | ||
=== 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 | 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. | ||
=== Force 24-Bit Color === | |||
*<code>ForceTrueColor = True</code> or <code>False</code> to enable and disable "Force 24-Bit Color" respectively. | |||
=== Disable Copy Filter === | |||
*<code>DisableCopyFilter = True</code> or <code>False</code> to enable and disable "Disable Copy Filter" respectively. | |||
=== Arbitrary Mipmap Detection === | |||
*<code>ArbitraryMipmapDetection = True</code> or <code>False</code> to enable and disable "Arbitrary Mipmap Detection" respectively. | |||
=== OutputResamplingMode === | |||
Default = 0, | |||
Bilinear = 1, | |||
BSpline = 2, | |||
MitchellNetravali = 3, | |||
CatmullRom = 4, | |||
SharpBilinear = 5, | |||
AreaSampling = 6, | |||
== [Video_Hacks] == | == [Video_Hacks] == | ||
The following entries go under [Video_Hacks] (or [Graphics.Hacks]) section of the GameINI. | |||
=== EFB Copies === | === EFB Copies === | ||
*<code>EFBToTextureEnable = True</code> or <code>False</code> to enable " | *<code>EFBToTextureEnable = True</code> or <code>False</code> to enable "EFB to Texture" and "EFB to Ram" respectively. | ||
=== Scaled EFB Copy === | === Scaled EFB Copy === | ||
*<code>EFBScaledCopy = True</code> or <code>False</code> to enable and disable "Scaled EFB Copy" respectively. | *<code>EFBScaledCopy = True</code> or <code>False</code> to enable and disable "Scaled EFB Copy" respectively. | ||
=== Skip EFB Access From | === Skip EFB Access From CPU === | ||
*<code>EFBAccessEnable = True</code> or <code>False</code> to disable and enable "Skip EFB Access From | *<code>EFBAccessEnable = True</code> or <code>False</code> to disable and enable "Skip EFB Access From CPU" respectively. Beware that it has the opposite behavior of the GUI option! | ||
=== Ignore Format Changes === | === Ignore Format Changes === | ||
*<code>EFBEmulateFormatChanges = True</code> or <code>False</code> to disable and enable "Ignore Format Changes" respectively. Beware that it has the opposite behavior of the | *<code>EFBEmulateFormatChanges = True</code> or <code>False</code> to disable and enable "Ignore Format Changes" respectively. Beware that it has the opposite behavior of the GUI option! | ||
=== Bounding Box === | |||
*<code>BBoxEnable = True</code> or <code>False</code> to enable and disable "Bounding Box" calculation respectively. | |||
=== Vertex Rounding === | |||
*<code>VertexRounding = True</code> or <code>False</code> to enable and disable "Vertex Rounding" respectively. | |||
===XFB copies === | |||
*<code>XFBToTextureEnable = True</code> or <code>False</code> to enable "XFB to Texture" and "XFB to Ram" respectively. | |||
===Immediate XFB === | |||
*<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 === | ||
*<code> | *<code>DeferEFBCopies = True</code> or <code>False</code> to enable and disable "Defer EFB Copies to RAM" respectively. | ||
*<code> | |||
*<code> | === Defer EFB Cache Invalidation === | ||
*<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] (or [Graphics.Hardware]) section of the GameINI. | ||
*<code>VSync = True</code> or <code>False</code> to enable and disable " | |||
=== V-Sync === | |||
*<code>VSync = True</code> or <code>False</code> to enable and disable "V-Sync" respectively. | |||
== [Video_Stereoscopy] == | == [Video_Stereoscopy] == | ||
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 === | |||
*<code>StereoDepthPercentage = 100</code> Percentage to multiply with the depth value of StereoDepth in [[#Stereoscopic 3D Settings]]. | |||
*<code>StereoConvergence = 0</code> Base convergence value to be multiplied with the percentage value of StereoConvergencePercentage in [[#Stereoscopic 3D Settings]]. | |||
*<code>StereoEFBMonoDepth = True</code> or <code>False</code> to enable and disable "Monoscopic Shadows" respectively. | |||
=== Stereoscopic 3D Mode === | |||
Values starting from 0 represent the drop down order in the list that dolphin uses. | |||
*<code>StereoMode = 0</code> | |||
=== Stereoscopic 3D Settings === | === Stereoscopic 3D Settings === | ||
*<code> | *<code>StereoDepth = 20</code> Separation distance between the virtual cameras. | ||
*<code> | *<code>StereoConvergencePercentage = 100</code> Distance of the convergence plane. | ||
*<code> | *<code>StereoSwapEyes = True</code> or <code>False</code> to enable and disable "Swap Eyes" respectively. | ||
== [DSP] == | == [DSP] == | ||
=== Backend === | The following entries go under [DSP] (or [Dolphin.DSP]) section of the GameINI. | ||
=== Audio Backend === | |||
*<code>Backend = No audio output</code> | |||
*<code>Backend = ALSA</code> | |||
*<code>Backend = Cubeb</code> | |||
*<code>Backend = Pulse</code> | |||
*<code>Backend = OpenAL</code> | *<code>Backend = OpenAL</code> | ||
*<code>Backend = | *<code>Backend = OpenSLES</code> | ||
*<code>Backend = XAudio2</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. | |||
=== | === DSP Emulator Engine === | ||
*<code>EnableJIT = True</code> | *<code>EnableJIT = True</code> or <code>False</code> for "LLE recompiler" and "LLE interpreter" respectively. This is when [[#DSP HLE]] is disabled. | ||
=== Volume === | === Volume === | ||
*<code>Volume = 100</code>, values starting from 0 up to 100 max are valid. | *<code>Volume = 100</code>, values starting from 0 up to 100 max are valid. | ||
== [ | == [Wii] == | ||
=== | === Wii System Language === | ||
Implemented in {{revision|5.0-2023}} and later. | |||
< | *<code>Language = 1</code> for English | ||
Choose a number for the language you want from the list below: | |||
0 = Japanese | |||
1 = English | |||
2 = German | |||
3 = French | |||
4 = Spanish | |||
5 = Italian | |||
6 = Dutch | |||
7 = Simplified Chinese | |||
8 = Traditional Chinese | |||
9 = Korean | |||
=== Wii Aspect Ratio === | |||
Set the Wii Aspect Ratio to 4:3 or 16:9 | |||
*<code>Widescreen = True</code> for 16:9 or <code>False</code> for 4:3 | |||
=== | == [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]] |
Revision as of 01:30, 21 February 2024
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.
For controller settings, go to GameINI (Controller Settings).
Properties Window
These are settings you can update GameINI directly from the game properties window.
- Enable Dual Core - controls #Dual Core
- Enable MMU - controls #Memory Management Unit (MMU)
- Skip DCBZ clearing - controls #DCBZ
- Enable FPRF - controls #Floating-point Result Flag
- Synchronize GPU thread - controls #Synchronize GPU Thread
- Speed up Disc Transfer Rate - controls #Speed Up Disc Transfer Rate
- DSP HLE emulation (fast) - controls #DSP HLE
- Deterministic dual core - controls #Dualcore Determinism
- Stereoscopy Depth Percentage - controls StereoDepthPercentage in #Stereoscopic 3D Offset Settings
- Convergence - controls StereoConvergence in #Stereoscopic 3D Offset Settings
- Monoscopic Shadows - controls StereoEFBMonoDepth in #Stereoscopic 3D Offset Settings
[Core]
The following entries go under [Core] (or [Dolphin.Core]) section of the GameINI.
Dual Core
CPUThread = True
orFalse
to enable and disable "Dual Core" mode respectively.
Graphics Backend
GFXBackend = D3D
to set the video backend to Direct3D 11.GFXBackend = D3D12
to set the video backend to Direct3D 12. Direct3D 12 was removed in 5.0-3774 then reintroduced in 5.0-9878, this setting will do nothing during this interval.GFXBackend = OGL
to set the video backend to OpenGL.GFXBackend = Vulkan
to set the video backend to Vulkan.GFXBackend = Metal
to set the video backend to Metal (macOS only).GFXBackend = Software Renderer
to set the video backend to Software.GFXBackend = Null
to set the video backend to Null(no output).
CPU Emulator Engine
CPUCore = 0
to set the CPU emulator engine to "Interpreter".CPUCore = 1
to set the CPU emulator engine to "JIT x64".CPUCore = 2
to set the CPU emulator engine to "JITIL". Removed (will do nothing) in 5.0-3792 and later.CPUCore = 4
to set the CPU emulator engine to "JIT ARM64".CPUCore = 5
to set the CPU emulator engine to "Cached Interpreter".
Floating-point Result Flag
FPRF = True
orFalse
to enable and disable "Floating-point Result Flag" calculation respectively.
DSP HLE
DSPHLE = True
orFalse
to enable and disable "DSP HLE" respectively.
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.
Emulation Speed (formerly Framelimit)
EmulationSpeed = 0.000000000
will set it to "unlimited".EmulationSpeed = 0.100000001
will set it to "10%".EmulationSpeed = 0.200000003
will set it to "20%".EmulationSpeed = 0.300000012
will set it to "30%".EmulationSpeed = 0.400000006
will set it to "40%".EmulationSpeed = 0.500000000
will set it to "50%".EmulationSpeed = 0.600000024
will set it to "60%".EmulationSpeed = 0.699999988
will set it to "70%".EmulationSpeed = 0.800000012
will set it to "80%".EmulationSpeed = 0.900000036
will set it to "90%".EmulationSpeed = 1.00000000
will set it to "100%", as in normal emulation speed.EmulationSpeed = 1.10000002
will set it to "110%".EmulationSpeed = 1.20000005
will set it to "120%".EmulationSpeed = 1.30000007
will set it to "130%".EmulationSpeed = 1.39999998
will set it to "140%".EmulationSpeed = 1.50000000
will set it to "150%".EmulationSpeed = 1.60000002
will set it to "160%".EmulationSpeed = 1.70000005
will set it to "170%".EmulationSpeed = 1.80000007
will set it to "180%".EmulationSpeed = 1.89999998
will set it to "190%".EmulationSpeed = 2.00000000
will set it to "200%".
CPU Overclock
Implemented in 5.0-2302 and later.
OverclockEnable = True
orFalse
to enable and disable "CPU Overclock" respectively.Overclock = 1.0
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.
Memory Override
RAMOverrideEnable = True
orFalse
to enable and disable "Emulate Memory Size Override" respectively.MEM1Size = 0x01800000
size in bytes in hex or decimal.MEM2Size = 0x04000000
size in bytes in hex or decimal.
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 = True
orFalse
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:
SyncGPU = True
andSyncOnSkipIdle = True
for "Always"SyncGPU = False
andSyncOnSkipIdle = True
for "On idle skipping"SyncGPU = False
andSyncOnSkipIdle = False
for "Never"
GPU Overclock
SyncGpuOverclock= 1.0
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, since 5.0-683, if Dual Core is disabled.
Speed Up Disc Transfer Rate
Accelerates the emulated disc speed, removing any loading emulation.
FastDiscSpeed = True
orFalse
to enable and disable the "Speed up Disc Transfer Rate" respectively.
Dualcore Determinism
GPUDeterminismMode = fake-completion
ornone
to enable and disable "Deterministic dual core" respectively.GPUDeterminismMode = auto
will only enable "Deterministic dual core" during Netplay or movie recording/playback.
Memory Management Unit (MMU)
MMU = True
orFalse
to enable and disable the "Memory Management Unit" respectively.
DCBZ
Will do nothing in 5.0-8482 and later.
DCBZ = True
orFalse
to enable and disable "Skip DCBZ Clearing" respectively.
Progressive Scan
ProgressiveScan = True
orFalse
to enable and disable "Progressive Scan" respectively.
GameCube Language
Implemented in 5.0-2023 and later.
GameCubeLanguage = 0
for English or Japanese, depending on the region of the console/game.
Choose a number for the language you want from the list below:
0 = English/Japanese 1 = German 2 = French 3 = Spanish 4 = Italian 5 = Dutch
GameCube Slots
Implemented in 5.0-15842
SlotA = 8
for GCI Folder. Choose a number from below list to change what is in Slot A.SlotB = 255
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.
MemcardAPath = pathtoslotAfile
MemcardAPath = pathtoslotBfile
Set the full path to the GCI Folder (since 5.0-17900).
GCIFolderAPath = gcifolderApath
GCIFolderBPath = gcifolderBpath
GameCube Serial Port
Implemented in 5.0-15842
SerialPort1 = 255
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)
BBA_MAC = MAC
to set the Ethernet MAC address.
BBA_XLINK_IP = 127.0.0.1
to set the IP address of the PC/device where XLink Kai is running.
BBA_BUILTIN_DNS = IPADDRESS
the DNS server to use for the builtin adapter
Wii Configuration
PAL60 = True
to enable EuRGB60 orFalse
to disable.WiiSDCard = True
to enable Wii SD/SDHC Card orFalse
to disable.WiiSDCardAllowWrites = True
to allow SDCard writes orFalse
to disable.
[Controls]
See GameINI (Controller Settings)
[Video_Settings]
The following entries go under [Video_Settings] (or [Graphics.Settings]) section of the GameINI.
Internal Resolution
Values starting from 0 represent the drop down order in the list that dolphin uses.
InternalResolution = 0
To increase the maximum available resolutions in the UI, you can set:
MaxInternalResolution = 9
(the default is 8)
Shader Compilation
ShaderCompilationMode = 0
0 = Specialized (Default) 1 = Exclusive Ubershaders 2 = Hybrid Ubershaders 3 = Skip Drawing
Compile Shaders Before Starting
WaitForShadersBeforeStarting = True
orFalse
to enable and disable "Compile Shaders Before Starting" respectively.
Texture Cache Accuracy
Controls the "Texture Cache Accuracy" setting, shown as a slider in the GUI.
SafeTextureCacheColorSamples = 0
→ Texture Cache Accuracy "Safe", the left most option on the slider.SafeTextureCacheColorSamples = 512
→ Texture Cache Accuracy "Middle", the middle option on the slider.SafeTextureCacheColorSamples = 128
→ Texture Cache Accuracy "Fast", the right most option on the slider.
GPU Texture Decoding
EnableGPUTextureDecoding = True
orFalse
to enable and disable "GPU Texture Decoding" respectively.
Aspect Ratio
Values starting from 0 represent the drop down order in the list that dolphin uses.
AspectRatio = 0
is auto, assigned based on what the emulated console indicates.AspectRatio = 1
to force the aspect ratio to 16:9.AspectRatio = 2
to force the aspect ratio to 4:3.AspectRatio = 3
to set the aspect ratio to "Stretch to window".
Widescreen Hack
Separates the aspect ratio rendered by the game from the one displayed in the game window. Use #Aspect Ratio options in addition to this setting.
wideScreenHack = True
orFalse
to enable and disable the "Widescreen Hack" respectively.
Anti-Aliasing
MSAA = 0
will set it to the top of the list value which is "None". "2x", "4x", "8x" samples would need2
,4
,8
to be used respectively.SSAA = True
orFalse
will toggle between "SSAA" and "MSAA" respectively. The amount of samples used for SSAA will depend on the MSAA value above.
External Frame Buffer
Will do nothing in 5.0-5874 and later. Use #XFB copies and #Immediate XFB instead.
UseXFB = True
orFalse
to enable and disable "External Frame Buffer" respectively. Virtual or Real will be set according to what you have set it last at the general settings. To control it use together the line below:UseRealXFB = True
orFalse
to enable "Real XFB" or "Virtual XFB" respectively.
Fast Depth Calculation
FastDepthCalc = True
orFalse
to enable and disable "Fast depth calculation" respectively.
Per-Pixel Lighting
EnablePixelLighting = True
orFalse
to enable and disable "Per-Pixel Lighting" respectively.
Disable Fog
DisableFog = True
orFalse
to enable and disable "Disable Fog" respectively.
Load Custom Textures
HiresTextures = True
orFalse
to enable and disable "Load Custom Textures" respectively.
Prefetch Custom Textures
CacheHiresTextures = True
orFalse
to enable and disable "Caching custom textures to RAM on startup".
Crop to 4:3 or 16:9
Crop = False
orTrue
to crop the picture from native aspect ration to 4:3 or 16:9.
Cull Vertices on the CPU
CPUCull = True
orFalse
to enable and disable "Cull Vertices on the CPU" respectively.
[Video_Enhancements]
The following entries go under [Video_Enhancements] (or [Graphics.Enhancements]) section of the GameINI.
Anisotropic Filtering
Values starting from 0 represent the drop down order in the list that dolphin uses.
MaxAnisotropy = 0
will set it to the top of the list value of 1x equivalent of disabling it. 2x, 4x, 8x, 16x would need1
,2
,3
,4
to be used respectively.
Force Texture Filtering
As of 5.0-18025 the option changed. Valid values are: 2
for linear, 1
for nearest and 0
for no filtering.
ForceTextureFiltering = 2
will set forced linear filtering.
For older builds, which at the time of writing includes beta 5.0-17995, use the following.
ForceFiltering = True
orFalse
to enable and disable "Force Texture Filtering" respectively.
Post-processing Effects
This option will only work with the OpenGL and Vulkan backend on versions before 5.0-9638. Use the names listed in the drop down menu of the option, below we use sepia as an example.
PostProcessingShader = sepia
, also you can put the name of your preferred shader here.
Force 24-Bit Color
ForceTrueColor = True
orFalse
to enable and disable "Force 24-Bit Color" respectively.
Disable Copy Filter
DisableCopyFilter = True
orFalse
to enable and disable "Disable Copy Filter" respectively.
Arbitrary Mipmap Detection
ArbitraryMipmapDetection = True
orFalse
to enable and disable "Arbitrary Mipmap Detection" respectively.
OutputResamplingMode
Default = 0, Bilinear = 1, BSpline = 2, MitchellNetravali = 3, CatmullRom = 4, SharpBilinear = 5, AreaSampling = 6,
[Video_Hacks]
The following entries go under [Video_Hacks] (or [Graphics.Hacks]) section of the GameINI.
EFB Copies
EFBToTextureEnable = True
orFalse
to enable "EFB to Texture" and "EFB to Ram" respectively.
Scaled EFB Copy
EFBScaledCopy = True
orFalse
to enable and disable "Scaled EFB Copy" respectively.
Skip EFB Access From CPU
EFBAccessEnable = True
orFalse
to disable and enable "Skip EFB Access From CPU" respectively. Beware that it has the opposite behavior of the GUI option!
Ignore Format Changes
EFBEmulateFormatChanges = True
orFalse
to disable and enable "Ignore Format Changes" respectively. Beware that it has the opposite behavior of the GUI option!
Bounding Box
BBoxEnable = True
orFalse
to enable and disable "Bounding Box" calculation respectively.
Vertex Rounding
VertexRounding = True
orFalse
to enable and disable "Vertex Rounding" respectively.
XFB copies
XFBToTextureEnable = True
orFalse
to enable "XFB to Texture" and "XFB to Ram" respectively.
Immediate XFB
ImmediateXFBEnable = True
orFalse
to enable and disable "Immediate XFB" respectively.
Skip Presenting Duplicate Frames
SkipDuplicateXFBs = True
orFalse
to enable and disable "Skip Presenting Duplicate Frames" respectively.
Defer EFB copies to RAM
DeferEFBCopies = True
orFalse
to enable and disable "Defer EFB Copies to RAM" respectively.
Defer EFB Cache Invalidation
EFBAccessDeferInvalidation = True
orFalse
to enable and disable "Defer EFB Cache Invalidation" respectively.
Manual Texture Sampling
FastTextureSampling = True
orFalse
to disable and enable "Manual Texture Sampling" respectively. Beware that it has the opposite behavior of the GUI option!
[Video_Hardware]
The following entries go under [Video_Hardware] (or [Graphics.Hardware]) section of the GameINI.
V-Sync
VSync = True
orFalse
to enable and disable "V-Sync" respectively.
[Video_Stereoscopy]
The following entries go under [Video_Stereoscopy] (or [Graphics.Stereoscopy] although that is currently bugged, see here) section of the GameINI.
Stereoscopic 3D Offset Settings
StereoDepthPercentage = 100
Percentage to multiply with the depth value of StereoDepth in #Stereoscopic 3D Settings.StereoConvergence = 0
Base convergence value to be multiplied with the percentage value of StereoConvergencePercentage in #Stereoscopic 3D Settings.StereoEFBMonoDepth = True
orFalse
to enable and disable "Monoscopic Shadows" respectively.
Stereoscopic 3D Mode
Values starting from 0 represent the drop down order in the list that dolphin uses.
StereoMode = 0
Stereoscopic 3D Settings
StereoDepth = 20
Separation distance between the virtual cameras.StereoConvergencePercentage = 100
Distance of the convergence plane.StereoSwapEyes = True
orFalse
to enable and disable "Swap Eyes" respectively.
[DSP]
The following entries go under [DSP] (or [Dolphin.DSP]) section of the GameINI.
Audio Backend
Backend = No audio output
Backend = ALSA
Backend = Cubeb
Backend = Pulse
Backend = OpenAL
Backend = OpenSLES
Backend = WASAPI (Exclusive Mode)
Backend = XAudio2
This option was removed in 5.0-10950 and later for many reasons, Dolphin will try to use Cubeb instead.
DSP Emulator Engine
EnableJIT = True
orFalse
for "LLE recompiler" and "LLE interpreter" respectively. This is when #DSP HLE is disabled.
Volume
Volume = 100
, values starting from 0 up to 100 max are valid.
[Wii]
Wii System Language
Implemented in 5.0-2023 and later.
Language = 1
for English
Choose a number for the language you want from the list below:
0 = Japanese 1 = English 2 = German 3 = French 4 = Spanish 5 = Italian 6 = Dutch 7 = Simplified Chinese 8 = Traditional Chinese 9 = Korean
Wii Aspect Ratio
Set the Wii Aspect Ratio to 4:3 or 16:9
Widescreen = True
for 16:9 orFalse
for 4:3
[Dolphin.BluetoothPassthrough]
Enable
Enabled = True
orFalse
to Enable or Disable bluetooth passthrough.