mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-04-01 00:25:17 +02:00
[dxvk] Add config option for graphics pipeline library enablement
This commit is contained in:
parent
06c084616f
commit
a6b0783a51
14
dxvk.conf
14
dxvk.conf
@ -272,6 +272,20 @@
|
|||||||
# dxvk.shrinkNvidiaHvvHeap = Auto
|
# dxvk.shrinkNvidiaHvvHeap = Auto
|
||||||
|
|
||||||
|
|
||||||
|
# Controls graphics pipeline library behaviour
|
||||||
|
#
|
||||||
|
# Can be used to change VK_EXT_graphics_pipeline_library usage for
|
||||||
|
# debugging purpose. Doing so will likely result in increased stutter
|
||||||
|
# or degraded performance.
|
||||||
|
#
|
||||||
|
# Supported values:
|
||||||
|
# - Auto: Enable if supported, and compile optimized pipelines in the background
|
||||||
|
# - True: Enable if supported, but do not compile optimized pipelines
|
||||||
|
# - False: Always disable the feature
|
||||||
|
|
||||||
|
# dxvk.enableGraphicsPipelineLibrary = Auto
|
||||||
|
|
||||||
|
|
||||||
# Sets enabled HUD elements
|
# Sets enabled HUD elements
|
||||||
#
|
#
|
||||||
# Behaves like the DXVK_HUD environment variable if the
|
# Behaves like the DXVK_HUD environment variable if the
|
||||||
|
@ -46,7 +46,8 @@ namespace dxvk {
|
|||||||
// cannot use this effectively in many games since no client API provides
|
// cannot use this effectively in many games since no client API provides
|
||||||
// interpoation qualifiers in vertex shaders.
|
// interpoation qualifiers in vertex shaders.
|
||||||
return m_features.extGraphicsPipelineLibrary.graphicsPipelineLibrary
|
return m_features.extGraphicsPipelineLibrary.graphicsPipelineLibrary
|
||||||
&& m_properties.extGraphicsPipelineLibrary.graphicsPipelineLibraryIndependentInterpolationDecoration;
|
&& m_properties.extGraphicsPipelineLibrary.graphicsPipelineLibraryIndependentInterpolationDecoration
|
||||||
|
&& m_options.enableGraphicsPipelineLibrary != Tristate::False;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ namespace dxvk {
|
|||||||
enableDebugUtils = config.getOption<bool> ("dxvk.enableDebugUtils", false);
|
enableDebugUtils = config.getOption<bool> ("dxvk.enableDebugUtils", false);
|
||||||
enableStateCache = config.getOption<bool> ("dxvk.enableStateCache", true);
|
enableStateCache = config.getOption<bool> ("dxvk.enableStateCache", true);
|
||||||
numCompilerThreads = config.getOption<int32_t> ("dxvk.numCompilerThreads", 0);
|
numCompilerThreads = config.getOption<int32_t> ("dxvk.numCompilerThreads", 0);
|
||||||
|
enableGraphicsPipelineLibrary = config.getOption<Tristate>("dxvk.enableGraphicsPipelineLibrary", Tristate::Auto);
|
||||||
useRawSsbo = config.getOption<Tristate>("dxvk.useRawSsbo", Tristate::Auto);
|
useRawSsbo = config.getOption<Tristate>("dxvk.useRawSsbo", Tristate::Auto);
|
||||||
shrinkNvidiaHvvHeap = config.getOption<Tristate>("dxvk.shrinkNvidiaHvvHeap", Tristate::Auto);
|
shrinkNvidiaHvvHeap = config.getOption<Tristate>("dxvk.shrinkNvidiaHvvHeap", Tristate::Auto);
|
||||||
hud = config.getOption<std::string>("dxvk.hud", "");
|
hud = config.getOption<std::string>("dxvk.hud", "");
|
||||||
|
@ -18,6 +18,9 @@ namespace dxvk {
|
|||||||
/// when using the state cache
|
/// when using the state cache
|
||||||
int32_t numCompilerThreads;
|
int32_t numCompilerThreads;
|
||||||
|
|
||||||
|
/// Enable graphics pipeline library
|
||||||
|
Tristate enableGraphicsPipelineLibrary;
|
||||||
|
|
||||||
/// Shader-related options
|
/// Shader-related options
|
||||||
Tristate useRawSsbo;
|
Tristate useRawSsbo;
|
||||||
|
|
||||||
|
@ -167,7 +167,8 @@ namespace dxvk {
|
|||||||
m_cache (device),
|
m_cache (device),
|
||||||
m_workers (device, &m_cache),
|
m_workers (device, &m_cache),
|
||||||
m_stateCache(device, this, &m_workers) {
|
m_stateCache(device, this, &m_workers) {
|
||||||
|
Logger::info(str::format("DXVK: Graphics pipeline libraries ",
|
||||||
|
(m_device->canUseGraphicsPipelineLibrary() ? "supported" : "not supported")));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user