# Create the VkSurface on the first call to IDXGISwapChain::Present, # rather than when creating the swap chain. Some games that start # rendering with a different graphics API may require this option, # or otherwise the window may stay black. # # Supported values: True, False # dxgi.deferSurfaceCreation = False # d3d9.deferSurfaceCreation = False # Enforce a stricter maximum frame latency. Overrides the application # setting specified by calling IDXGIDevice::SetMaximumFrameLatency. # Setting this to 0 will have no effect. # # Supported values : 0 - 16 # dxgi.maxFrameLatency = 0 # d3d9.maxFrameLatency = 0 # Enables a frame rate limiter, unless the game is already # limited to the same refresh rate by vertical synchronization. # # Supported values : Any non-negative integer # dxgi.maxFrameRate = 0 # d3d9.maxFrameRate = 0 # Override PCI vendor and device IDs reported to the application. Can # cause the app to adjust behaviour depending on the selected values. # # Supported values: Any four-digit hex number. # dxgi.customDeviceId = 0000 # dxgi.customVendorId = 0000 # d3d9.customDeviceId = 0000 # d3d9.customVendorId = 0000 # Override the reported device description # # Supported values: Any string. # dxgi.customDeviceDesc = "" # d3d9.customDeviceDesc = "" # Report Nvidia GPUs as AMD GPUs by default. This is enabled by default # to work around issues with NVAPI, but may cause issues in some games. # # Supported values: True, False # dxgi.nvapiHack = True # Override maximum amount of device memory and shared system memory # reported to the application. This may fix texture streaming issues # in games that do not support cards with large amounts of VRAM. # # Supported values: Any number in Megabytes. # dxgi.maxDeviceMemory = 0 # dxgi.maxSharedMemory = 0 # Some games think we are on Intel given a lack of NVAPI or # AGS/atiadlxx support. Report our device memory as shared memory, # and some small amount for a "carveout". # Supported values: True, False # dxgi.emulateUMA = False # Override back buffer count for the Vulkan swap chain. # Setting this to 0 or less will have no effect. # # Supported values: Any number greater than or equal to 2. # dxgi.numBackBuffers = 0 # d3d9.numBackBuffers = 0 # Overrides synchronization interval (Vsync) for presentation. # Setting this to 0 disables vertical synchronization entirely. # A positive value 'n' will enable Vsync and repeat the same # image n times, and a negative value will have no effect. # # Supported values: Any non-negative number # dxgi.syncInterval = -1 # d3d9.presentInterval = -1 # True enables the mailbox present mode in case regular Vsync is disabled. # This should avoid tearing, but may be unsupported on some systems # or require setting dxgi.numBackBuffers to a higher value in order # to work properly. # # False enables the relaxed fifo present mode in case regular Vsync is enabled. # This should result in tearing but reduce stutter if FPS are too low, # but may be unsupported on some systems. # # Please do not report issues with this option. # # Supported values: Auto, True, False # dxgi.tearFree = Auto # d3d9.tearFree = Auto # Performs range check on dynamically indexed constant buffers in shaders. # This may be needed to work around a certain type of game bug, but may # also introduce incorrect behaviour. # # Supported values: True, False # d3d11.constantBufferRangeCheck = False # Assume single-use mode for command lists created on deferred contexts. # This may need to be disabled for some applications to avoid rendering # issues, which may come at a significant performance cost. # # Supported values: True, False # d3d11.dcSingleUseMode = True # Override the maximum feature level that a D3D11 device can be created # with. Setting this to a higher value may allow some applications to run # that would otherwise fail to create a D3D11 device. # # Supported values: 9_1, 9_2, 9_3, 10_0, 10_1, 11_0, 11_1 # d3d11.maxFeatureLevel = 11_1 # Overrides the maximum allowed tessellation factor. This can be used to # improve performance in titles which overuse tessellation. # # Supported values: Any number between 8 and 64 # d3d11.maxTessFactor = 0 # Enables relaxed pipeline barriers around UAV writes. # # This may improve performance in some games, but may also introduce # rendering issues. Please don't report bugs with the option enabled. # # Supported values: True, False # d3d11.relaxedBarriers = False # Ignores barriers around UAV writes from fragment shaders. # # This may improve performance in some games, but may also introduce # rendering issues. Please don't report bugs with the option enabled. # # Supported values: True, False # d3d11.ignoreGraphicsBarriers = False # Overrides anisotropic filtering for all samplers. Set this to a positive # value to enable AF for all samplers in the game, or to 0 in order to # disable AF entirely. Negative values will have no effect. # # Supported values: Any number between 0 and 16 # d3d11.samplerAnisotropy = -1 # d3d9.samplerAnisotropy = -1 # Declares vertex positions as invariant in order to solve # potential Z-fighting issues at a small performance cost. # # Supported values: True, False # d3d11.invariantPosition = True # d3d9.invariantPosition = False # Forces the sample count of all textures to 1, and performs # the needed fixups in resolve operations and shaders. # # Supported values: True, False # d3d11.disableMsaa = False # Clears workgroup memory in compute shaders to zero. Some games don't do # this and rely on undefined behaviour. Enabling may reduce performance. # # Supported values: True, False # d3d11.zeroWorkgroupMemory = False # Sets number of pipeline compiler threads. # # Supported values: # - 0 to automatically determine the number of threads to use # - any positive number to enforce the thread count # dxvk.numCompilerThreads = 0 # Toggles raw SSBO usage. # # Uses storage buffers to implement raw and structured buffer # views. Enabled by default on hardware which has a storage # buffer offset alignment requirement of 4 Bytes (e.g. AMD). # Enabling this may improve performance, but is not safe on # hardware with higher alignment requirements. # # Supported values: # - Auto: Don't change the default # - True, False: Always enable / disable # dxvk.useRawSsbo = Auto # Controls workaround for NVIDIA HVV Heap bug. # # Limits the budget of NVIDIA's HVV (host-visible, # device-local) heap to be half of the reported size. This is # needed to avoid NVIDIA driver bug 3114283, and defaults to # being enabled on all affected drivers. # # Supported values: # - Auto: Don't change the default # - True, False: Always enable / disable # dxvk.halveNvidiaHVVHeap = Auto # Sets enabled HUD elements # # Behaves like the DXVK_HUD environment variable if the # environment variable is not set, otherwise it will be # ignored. The syntax is identical. # dxvk.hud = # Reported shader model # # The shader model to state that we support in the device # capabilities that the applicatation queries. # # Supported values: # - 1: Shader Model 1 # - 2: Shader Model 2 # - 3: Shader Model 3 # d3d9.shaderModel = 3 # Evict Managed on Unlock # # Decides whether we should evict managed resources from # system memory when they are unlocked entirely. # # Supported values: # - True, False: Always enable / disable # d3d9.evictManagedOnUnlock = False # DPI Awareness # # Decides whether we should call SetProcessDPIAware on device # creation. Helps avoid upscaling blur in modern Windows on # Hi-DPI screens/devices. # # Supported values: # - True, False: Always enable / disable # d3d9.dpiAware = True # Strict Constant Copies # # Decides whether we should always copy defined constants to # the UBO when relative addressing is used, or only when the # relative addressing starts a defined constant. # # Supported values: # - True, False: Always enable / disable # d3d9.strictConstantCopies = False # Strict Pow # # Decides whether we have an opSelect for handling pow(0,0) = 0 # otherwise it becomes undefined. # # Supported values: # - True, False: Always enable / disable # d3d9.strictPow = True # Lenient Clear # # Decides whether or not we fastpath clear anyway if we are close enough to # clearing a full render target. # # Supported values: # - True, False: Always enable / disable # d3d9.lenientClear = False # Max available memory # # Changes the max initial value used in tracking and GetAvailableTextureMem # Value in Megabytes # # Supported values: # - Max Available Memory: Any int32_t # - Memory Tracking Testing: True, False # d3d9.maxAvailableMemory = 4096 # d3d9.memoryTrackTest = False # Force enable/disable floating point quirk emulation # # Force toggle anything * 0 emulation # Tristate # Supported values: # - True/False # d3d9.floatEmulation = # Enable dialog box mode # # Changes the default state of dialog box mode. # *Disables* exclusive fullscreen when enabled. # # Supported values: # - True, False: Always enable / disable # d3d9.enableDialogMode = False # Overrides the application's MSAA level on the swapchain # # Supported values: -1 (application) and 0 to 16 (user override) # d3d9.forceSwapchainMSAA = -1 # Long Mad # # Should we make our Mads a FFma or do it the long way with an FMul and an FAdd? # This solves some rendering bugs in games that have z-pass shaders which # don't match entirely to the regular vertex shader in this way. # # Supported values: # - True/False # d3d9.longMad = False # Alpha Test Wiggle Room # # Workaround for games using alpha test == 1.0, etc due to wonky interpolation or # misc. imprecision on some vendors # # Supported values: # - True/False # d3d9.alphaTestWiggleRoom = False # Device Local Constant Buffers # # Enables using device local, host accessible memory for constant buffers in D3D9. # This tends to actually be slower for some reason on AMD, # and the exact same performance on NVIDIA. # # Supported values: # - True/False # d3d9.deviceLocalConstantBuffers = False # Allow Read Only # # Enables using the D3DLOCK_READONLY flag. Some apps use this # incorrectly, and write when they should be reading. # # Supported values: # - True/False # d3d9.allowLockFlagReadonly = True # No Explicit Front Buffer # # Disables the front buffer # # Supported values: # - True/False # d3d9.noExplicitFrontBuffer = False # Support DF formats # # Support the vendor extension DF floating point depth formats # # Supported values: # - True/False # d3d9.supportDFFormats = True # Support X4R4G4B4 # # Support the X4R4G4B4 format. # The Sims 2 is a horrible game made by complete morons. # # Supported values: # - True/False # d3d9.supportX4R4G4B4 = True # Support D32 # # Support the D32 format. # # Supported values: # - True/False # d3d9.supportD32 = True # SWVP Constant Counts # # The number of constants available when using Software Vertex Processing. # # Supported values: # - Integers # d3d9.swvpFloatCount = 8192 # d3d9.swvpIntCount = 2048 # d3d9.swvpBoolCount = 2048 # Disable A8 as a Render Target # # Disable support for A8 format render targets # Once again, The Sims 2 is a horrible game made by complete morons. # # Supported values: # - True/False # d3d9.disableA8RT = False # Support for VCache Query # # Support for the vcache query # Not very important as a user config. # Used internally. # # Supported values: # - True/False # Defaults to True if vendorId == 0x10de # d3d9.supportVCache = True # Force Sampler Type Spec Constants # # Useful if games use the wrong image and sampler # type combo like Halo: CE or Spellforce. # Can fix rendering in older, broken games in some instances. # # Supported values: # - True/False # d3d9.forceSamplerTypeSpecConstants = False # Force Aspect Ratio # # Only exposes modes with a given aspect ratio. # Useful for titles that break if they see ultra-wide. # # Supported values: # - Any ratio, ie. "16:9", "4:3" # d3d9.forceAspectRatio = "" # Allow Do Not Wait # # Allow the do not wait lock flag to be used # Useful if some apps use this incorrectly. # # Supported values: # - True/False # d3d9.allowDoNotWait = True # Allow Discard # # Allow the discard lock flag to be used # Useful if some apps use this incorrectly. # # Supported values: # - True/False # d3d9.allowDiscard = True # Enumerate by Displays # # Whether we should enumerate D3D9 adapters by display (windows behaviour) # or by physical adapter. # May be useful in PRIME setups. # # Supported values: # - True/False # d3d9.enumerateByDisplays = True # APITrace Mode # # Makes all host visible buffers cached and coherent # Improves performance when apitracing, but also can impact # some dumb games. # # Supported values: # - True/False # d3d9.apitraceMode = False # d3d11.apitraceMode = False