Skip to content

Commit 88e6392

Browse files
committed
Update patch for dxvk commit 2405e474
Fixes #6 Also extends compatibility to dxvk 1.4.3
1 parent 3d0d74a commit 88e6392

File tree

2 files changed

+17
-24
lines changed

2 files changed

+17
-24
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ An attempt to improve the dxvk async patch at https://github.com/jomihaka/dxvk-p
33

44
### Improvements
55

6-
- Compatible with dxvk v1.4.5 - v1.7.3
6+
- Compatible with dxvk v1.4.3 - v1.7.3
77

88
- Async pipelines are written to the state cache. The original patch doesn't since it was made before dxvk introduced the state cache. Previously you would end up with near empty state caches when using dxvk-async, now you can have the best of both worlds.
99

dxvk-async.patch

+16-23
Original file line numberDiff line numberDiff line change
@@ -264,44 +264,37 @@ index 19b5d85f..3da24c49 100644
264264

265265
};
266266
diff --git a/src/dxvk/dxvk_options.cpp b/src/dxvk/dxvk_options.cpp
267-
index 904082f6..999723cc 100644
267+
index 73dd69d1..c3da6bb5 100644
268268
--- a/src/dxvk/dxvk_options.cpp
269269
+++ b/src/dxvk/dxvk_options.cpp
270-
@@ -3,8 +3,10 @@
271-
namespace dxvk {
272-
273-
DxvkOptions::DxvkOptions(const Config& config) {
274-
+ enableAsync = config.getOption<bool> ("dxvk.enableAsync", false);
275-
enableStateCache = config.getOption<bool> ("dxvk.enableStateCache", true);
276-
enableOpenVR = config.getOption<bool> ("dxvk.enableOpenVR", true);
277-
+ numAsyncThreads = config.getOption<int32_t> ("dxvk.numAsyncThreads", 0);
278-
numCompilerThreads = config.getOption<int32_t> ("dxvk.numCompilerThreads", 0);
270+
@@ -10,6 +10,8 @@ namespace dxvk {
279271
useRawSsbo = config.getOption<Tristate>("dxvk.useRawSsbo", Tristate::Auto);
280272
useEarlyDiscard = config.getOption<Tristate>("dxvk.useEarlyDiscard", Tristate::Auto);
273+
hud = config.getOption<std::string>("dxvk.hud", "");
274+
+ enableAsync = config.getOption<bool> ("dxvk.enableAsync", false);
275+
+ numAsyncThreads = config.getOption<int32_t> ("dxvk.numAsyncThreads", 0);
276+
}
277+
278+
}
279+
\ No newline at end of file
281280
diff --git a/src/dxvk/dxvk_options.h b/src/dxvk/dxvk_options.h
282-
index 6843c16f..84e1933f 100644
281+
index 3c5dde91..52a7be04 100644
283282
--- a/src/dxvk/dxvk_options.h
284283
+++ b/src/dxvk/dxvk_options.h
285-
@@ -8,12 +8,19 @@ namespace dxvk {
286-
DxvkOptions() { }
287-
DxvkOptions(const Config& config);
284+
@@ -21,6 +21,13 @@ namespace dxvk {
285+
/// when using the state cache
286+
int32_t numCompilerThreads;
288287

289288
+ // Enable async pipelines
290289
+ bool enableAsync;
291290
+
292-
/// Enable state cache
293-
bool enableStateCache;
294-
295-
/// Enables OpenVR loading
296-
bool enableOpenVR;
297-
298291
+ /// Number of compiler threads
299292
+ /// when using async pipelines
300293
+ int32_t numAsyncThreads;
301294
+
302-
/// Number of compiler threads
303-
/// when using the state cache
304-
int32_t numCompilerThreads;
295+
/// Shader-related options
296+
Tristate useRawSsbo;
297+
Tristate useEarlyDiscard;
305298
diff --git a/src/dxvk/dxvk_pipecompiler.cpp b/src/dxvk/dxvk_pipecompiler.cpp
306299
new file mode 100644
307300
index 00000000..40218acd

0 commit comments

Comments
 (0)