diff --git a/src/dxvk/dxvk_state_cache.cpp b/src/dxvk/dxvk_state_cache.cpp index 63a982c3e..31800cb27 100644 --- a/src/dxvk/dxvk_state_cache.cpp +++ b/src/dxvk/dxvk_state_cache.cpp @@ -105,7 +105,15 @@ namespace dxvk { return true; } - return read(data); + if (!read(data)) + return false; + + // Format hasn't changed, but we introduced + // dynamic vertex strides in the meantime + if (version < 15) + data.setStride(0); + + return true; } diff --git a/src/dxvk/dxvk_state_cache_types.h b/src/dxvk/dxvk_state_cache_types.h index aa5d6848f..e12ca5d07 100644 --- a/src/dxvk/dxvk_state_cache_types.h +++ b/src/dxvk/dxvk_state_cache_types.h @@ -52,7 +52,7 @@ namespace dxvk { */ struct DxvkStateCacheHeader { char magic[4] = { 'D', 'X', 'V', 'K' }; - uint32_t version = 14; + uint32_t version = 15; uint32_t entrySize = 0; /* no longer meaningful */ };