HerrHulaHoop (talk | contribs) (→Audio configuration: Fixed audio priorities) |
HerrHulaHoop (talk | contribs) (→Debug configuration: Added debug console mode and other fixes) |
||
Line 152: | Line 152: | ||
|'''Disable ZCull occlusion queries'''||Off||Disables running occlusion queries. Minor to moderate performance boost. <br>Might introduce issues with broken occlusion e.g missing geometry and extreme pop-in. | |'''Disable ZCull occlusion queries'''||Off||Disables running occlusion queries. Minor to moderate performance boost. <br>Might introduce issues with broken occlusion e.g missing geometry and extreme pop-in. | ||
|- | |- | ||
|'''Force CPU blit emulation'''||Off||Forces emulation of all blit and image manipulation operations on the CPU. Requires 'Write Color Buffers' option to also be enabled in most cases to avoid missing graphics. <br>Significantly degrades performance but is more accurate in some cases. This setting overrides the 'GPU texture scaling' option. | |'''Force CPU blit emulation'''||Off||Forces emulation of all blit and image manipulation operations on the CPU. <br>Requires 'Write Color Buffers' option to also be enabled in most cases to avoid missing graphics. <br>Significantly degrades performance but is more accurate in some cases. This setting overrides the 'GPU texture scaling' option. | ||
|- | |- | ||
|'''Disable on-disk shader cache'''||Off||Disables the loading and saving of shaders from and to the shader cache in the data directory. | |'''Disable on-disk shader cache'''||Off||Disables the loading and saving of shaders from and to the shader cache in the data directory. | ||
Line 160: | Line 160: | ||
|'''Disable FIFO reordering'''||Off||Disables RSX FIFO optimizations completely. Draws are processed as they are received by the DMA puller. | |'''Disable FIFO reordering'''||Off||Disables RSX FIFO optimizations completely. Draws are processed as they are received by the DMA puller. | ||
|- | |- | ||
|''' | |'''Strict texture flushing'''||Off||Forces texture flushing even in situations where it is not necessary/correct. <br>Known to cause visual artifacts, but useful for debugging certain texture cache issues. | ||
|- | |- | ||
|'''Use GPU texture scaling'''||Off||Force all texture transfer, scaling and conversion operations on the GPU. <br>May cause texture corruption in some cases. | |'''Use GPU texture scaling'''||Off||Force all texture transfer, scaling and conversion operations on the GPU. <br>May cause texture corruption in some cases. | ||
Line 177: | Line 177: | ||
|- | |- | ||
|'''Hook static functions'''||Off||Allows to hook some functions like 'memcpy' replacing them with high-level implementations. <br>May do nothing or break things. Experimental. | |'''Hook static functions'''||Off||Allows to hook some functions like 'memcpy' replacing them with high-level implementations. <br>May do nothing or break things. Experimental. | ||
|- | |||
|'''Debug console mode'''||Off||Increases the amount of usable system memory to match a DECR console and more. <br>Causes some software to behave differently than on retail hardware. | |||
|} | |} | ||
Revision as of 19:33, 23 March 2019
Below is the default configuration for the emulator. Not all options mentioned below are mandatory. For example, options such as Resolution Scale and Anisotropic Filter can be increased if your graphics card can handle the additional load whereas Lower SPU Thread Priority should be used with weaker CPUs. For best performance, read the description for each option carefully and also refer to the specific configurations mentioned for each game page.
CPU configuration
Setting | Default Option | Description |
---|---|---|
PPU decoder | LLVM Recompiler | LLVM Recompiler: Recompiles the game's executable once before running it for the first time. By far the fastest option and should always be used. Should you face compatibility issues, fall back to one of the Interpreters and retry. Interpreter (fast): The fastest interpreter. Trades accuracy for speed, and it very rarely breaks games even in comparison to the precise option. Try this if PPU LLVM Recompiler fails. Interpreter (precise): The most accurate Interpreter, but very slow to play games with. You may try this as a last resort if you encounter odd bugs or crashes. |
SPU decoder | ASMJIT Recompiler | ASMJIT Recompiler: Fast option with very good compatibility. LLVM Recompiler: Fastest option with very good compatibility. Recompiles the game's SPU LLVM cache before running which adds extra start-up time. If you experience issues, use the ASMJIT Recompiler. Interpreter (fast): Slower than the SPU ASMJIT Recompiler but significantly faster than Interpreter (precise). Games rarely need this option. Interpreter (precise): Extremely slow but may fix broken graphics in some games. |
Preferred SPU threads | Auto | Some SPU stages are sensitive to race conditions and allowing a limited number at a time helps alleviate performance stalls. Setting this to a smaller value might improve performance and reduce stuttering in some games. Leave this on auto if performance is negatively affected when setting a small value. |
Firmware settings | Load liblv2.sprx only | Load liblv2.sprx only: Closely emulates how games can load and unload system module files on a real PlayStation 3. Automatically load required libraries: Automatically selects the LLE libraries to load. While this option works fine in most cases, liblv2 is the preferred option. Manually load selected libraries: Allows the user to manually choose the LLE libraries to load. If unsure, don't use this option. Nothing will work if you use this incorrectly. Load automatic and manual selection: Automatically selects the LLE libraries to load and allows the user to choose additional libraries manually. If unsure, don't use this option. |
Enable thread scheduler | On | Allows the emulator to manually schedule physical cores to run specific tasks on, instead of letting the OS handle it. Very useful for AMD Ryzen systems on Windows, where it can give huge performance gains. Not recommended for Linux as the OS schedules the physical cores better on its own. No effect on Intel CPUs. |
Lower SPU thread priority | Off | Runs SPU threads with lower priority than PPU threads. Usually faster on an i3 or i5, possibly slower or no difference on an i7 or Ryzen. |
Enable SPU loop detection | On | Try to detect loop conditions in SPU kernels and use them as scheduling hints. Improves performance and reduces CPU usage. May cause severe audio stuttering in rare cases. |
SPU cache | On | Should normally stay enabled. Disable this if the cache becomes too large. Disabling it does not remove the existing cache. |
Accurate xfloat | Off | Fixes bugs in various games at the cost of performance. This setting is only applied when SPU LLVM is active. |
SPU block size | Safe | This option controls the SPU analyser, particularly the size of compiled units. Mega and Giga modes may improve performance by tying smaller units together, decreasing the number of compiled units but increasing their size. Use the Safe mode for maximum compatibility. |
TSX instructions | Enabled | Enable usage of TSX instructions. Needs to be forced on some Haswell or Broadwell CPUs. Forcing this on older Hardware can lead to system instability, use it with caution. |
GPU configuration
Setting | Default Option | Description |
---|---|---|
Renderer | Vulkan | Vulkan is the fastest renderer. OpenGL is the most accurate renderer. If unsure, use Vulkan. Should you have any compatibility issues, fall back to OpenGL. DirectX 12 is deprecated and should never be used. |
Graphics device | NA | On multi GPU systems select which GPU to use in RPCS3 when using Vulkan or DirectX 12. This is not needed when using OpenGL. |
Aspect ratio | 16:9 | Leave this on 16:9 unless you have a 4:3 monitor. Auto also works well, especially if you use a resolution that is not 720p. |
Framelimit | Off | Off is the best option as it performs faster. Using the frame limiter will add extra overhead and slow down the game. However, some games will crash if the framerate is too high. If that happens, set value to anything other than Off. |
Anisotropic filter | Automatic | Higher values increase sharpness of textures on sloped surfaces at the cost of GPU resources. Modern GPUs can handle this setting just fine even at 16x. Keep this on Automatic if you want to use the original setting used by a real PS3. |
Anti-aliasing | NA | Doesn't exist (yet). |
Default resolution | 1280x720 | This setting will be ignored if the Resolution Scale is set to anything other than 100%. Leave this on 1280x720, every PS3 game is compatible with this resolution. Only use 1920x1080 if the game supports it. |
Resolution scale | 100% | Scales the game's resolution by the given percentage. The base resolution is always 1280x720. Set this value to 100% if you want to use the normal resolution options. |
Resolution scale threshold | 16 x 16 | Only framebuffers greater than this size will be upscaled. Increasing this value might fix problems with missing graphics when upscaling, especially when Write Color Buffers is enabled. Do not touch this setting if you are unsure. |
Write color buffer | Off | Enable this option if you get missing graphics or broken lighting ingame. Might degrade performance and introduce stuttering in some cases. |
Strict rendering mode | Off | Enforces strict compliance to the API specification. Might result in degraded performance in some games. Can resolve rare cases of missing graphics and flickering. Enforces default settings for Resolution Scale and Resolution Scale Threshold. If unsure, don't use this option. |
VSync | Off | By having this off you might obtain a higher frame rate at the cost of tearing artifacts in the game. |
Stretch to display area | Off | Overrides the aspect ratio and stretches the image to the full display area. |
Disable vertex cache | Off | Disables the vertex cache. Might resolve missing or flickering graphics output. May degrade performance. |
Disable Async shader compiler | Off | Disables asynchronous shader compilation. Fixes missing graphics while shaders are compiling but introduces stuttering. Disable if you do not want to deal with graphics pop-in, or for testing before filing any bug reports. |
Audio configuration
Setting | Default Option | Description |
---|---|---|
Audio output | Windows: XAudio2 Linux: PulseAudio |
Windows: XAudio2 is the recommended option and should be used whenever possible. OpenAL uses a cross-platform approach and is the next best alternative. Linux: OpenAL uses a cross-platform approach and supports audio buffering, so it is the recommended option. PulseAudio uses the native Linux sound system, and is the next best alternative. If neither are available, ALSA can be used instead. |
Dump to file | Off | Saves all audio as a raw wave file. If unsure, leave this unchecked. |
Convert to 16-bit | Off | Uses 16-bit audio samples instead of default 32-bit floating point. Use with buggy audio drivers if you have no sound or completely broken sound. |
Downmix to stereo | On | Uses stereo audio output instead of default 7.1 surround sound. Use with stereo audio devices. Disable it only if you are using a surround sound audio system. |
Volume | 100% | Controls the overall volume of the emulation. Values above 100% might reduce the audio quality. |
I/O configuration
Setting | Default Option | Description |
---|---|---|
Keyboard handler | Null | Some games support native keyboard input. Basic will work in these cases. |
Mouse handler | Basic | Some games support native mouse input. Basic will work in these cases. |
Camera input | Unknown | Camera support is not implemented, leave this on unknown. |
Camera settings | Null | Camera support is not implemented, leave this on null. |
Move handler | Null | PlayStation Move support is not implemented, leave this on null. Fake: Experimental! This maps Move controls to DS4 controller mappings. |
System configuration
Setting | Default Option | Description |
---|---|---|
Console language | Japanese | Some games may fail to boot if the system language is not available in the game itself. Other games will switch language automatically to what is selected here. It is recommended leaving this on a language supported by the game. |
Homebrew: Enable /host_root/ | Off | Required for some Homebrew. If unsure, don't use this option. |
Console region | NA | Doesn't exist (yet). |
Enter button assignment | Enter with cross | The button used for enter/accept/confirm in system dialogs. You can change this to use the circle button instead, which is the default configuration on Japanese systems and in many Japanese games. In these cases, having the cross button assigned can often lead to confusion. |
Disk cache | Off | Automatically removes older files from disk cache on boot if it grows larger than the specified value. Games can use the cache folder to temporarily store data outside of system memory. It is not used for long-term storage. Default wipe size is set to 5120MB. |
Network configuration
Setting | Default Option | Description |
---|---|---|
Network status | Disconnected | Leave as disconnected unless you're debugging. RPCS3 has no online support. |
Debug configuration
Below configurations are primarily used by developers. If unsure, don't use these options.
Setting | Default Option | Description |
---|---|---|
Use legacy OpenGL buffers | Off | Enables use of classic OpenGL buffers which allows capturing tools to work with RPCS3 e.g RenderDoc. |
Debug output | Off | Enables the selected API's inbuilt debugging functionality. Will cause severe performance degradation especially with Vulkan. |
Debug overlay | Off | Provides a graphical overlay of various debugging information. |
Log shader programs | Off | Dump game shaders to file. |
Use high precision Z-buffer | Off | Only useful when debugging differences in GPU hardware. |
Write depth buffers | Off | Never use this. |
Read depth buffers | Off | Never use this. |
Read color buffers | Off | Never use this. |
Disable ZCull occlusion queries | Off | Disables running occlusion queries. Minor to moderate performance boost. Might introduce issues with broken occlusion e.g missing geometry and extreme pop-in. |
Force CPU blit emulation | Off | Forces emulation of all blit and image manipulation operations on the CPU. Requires 'Write Color Buffers' option to also be enabled in most cases to avoid missing graphics. Significantly degrades performance but is more accurate in some cases. This setting overrides the 'GPU texture scaling' option. |
Disable on-disk shader cache | Off | Disables the loading and saving of shaders from and to the shader cache in the data directory. |
Disable Vulkan memory allocator | Off | Disables the custom Vulkan memory allocator and reverts to direct calls to VkAllocateMemory/VkFreeMemory. |
Disable FIFO reordering | Off | Disables RSX FIFO optimizations completely. Draws are processed as they are received by the DMA puller. |
Strict texture flushing | Off | Forces texture flushing even in situations where it is not necessary/correct. Known to cause visual artifacts, but useful for debugging certain texture cache issues. |
Use GPU texture scaling | Off | Force all texture transfer, scaling and conversion operations on the GPU. May cause texture corruption in some cases. |
PPU debug | Off | Never use this. |
SPU debug | Off | Never use this. |
SPU verification | On | Never disable this. |
Set DAZ and FTZ | Off | Never use this. |
Accurate GETLLAR | Off | Never use this. |
Accurate PUTLLUC | Off | Never use this. |
Hook static functions | Off | Allows to hook some functions like 'memcpy' replacing them with high-level implementations. May do nothing or break things. Experimental. |
Debug console mode | Off | Increases the amount of usable system memory to match a DECR console and more. Causes some software to behave differently than on retail hardware. |
Legacy configuration
Below are the configurations used for previous versions of the emulator. Refer to the linked pull request for a detailed description on why this setting was removed.
Setting | Default Option | Category | Removed By | Description |
---|---|---|---|---|
Bind SPU threads to secondary cores | Off | CPU | PR 4079 | If your CPU has SMT (Hyper-Threading) SPU threads will run on these logical cores instead. Usually faster on an i3, possibly slower or no difference on an i7 or Ryzen. |
Invalidate cache every frame | Off | GPU | PR 3618 | Enable this option if the game has broken shadows. May slightly degrade performance. |