mirror of
https://github.com/doitsujin/dxvk.git
synced 2024-12-12 22:08:59 +01:00
[dxvk] Get rid of MaxNumActiveBindings
This only existed due to the binding mask, which we removed with the null descriptor rework. We can basically support an unlimited number of descriptors now.
This commit is contained in:
parent
b950102233
commit
3aa786fb6f
@ -178,9 +178,6 @@ namespace dxvk {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
using DxvkBindingMask = DxvkBindingSet<MaxNumActiveBindings>;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Bound shader resources
|
* \brief Bound shader resources
|
||||||
*
|
*
|
||||||
|
@ -12,7 +12,6 @@ namespace dxvk {
|
|||||||
MaxNumXfbStreams = 4,
|
MaxNumXfbStreams = 4,
|
||||||
MaxNumViewports = 16,
|
MaxNumViewports = 16,
|
||||||
MaxNumResourceSlots = 1216,
|
MaxNumResourceSlots = 1216,
|
||||||
MaxNumActiveBindings = 384,
|
|
||||||
MaxNumQueuedCommandBuffers = 18,
|
MaxNumQueuedCommandBuffers = 18,
|
||||||
MaxNumQueryCountPerPool = 128,
|
MaxNumQueryCountPerPool = 128,
|
||||||
MaxNumSpecConstants = 12,
|
MaxNumSpecConstants = 12,
|
||||||
|
@ -44,19 +44,14 @@ namespace dxvk {
|
|||||||
return read(data);
|
return read(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool read(DxvkBindingMask& data, uint32_t version) {
|
bool read(DxvkBindingMaskV10& data, uint32_t version) {
|
||||||
// v11 removes this field
|
// v11 removes this field
|
||||||
if (version >= 11)
|
if (version >= 11)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (version < 9) {
|
if (version < 9) {
|
||||||
DxvkBindingMaskV8 v8;
|
DxvkBindingMaskV8 v8;
|
||||||
|
return read(v8);
|
||||||
if (!read(v8))
|
|
||||||
return false;
|
|
||||||
|
|
||||||
data = v8.convert();
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return read(data);
|
return read(data);
|
||||||
@ -577,7 +572,7 @@ namespace dxvk {
|
|||||||
keys[i] = g_nullShaderKey;
|
keys[i] = g_nullShaderKey;
|
||||||
}
|
}
|
||||||
|
|
||||||
DxvkBindingMask dummyBindingMask = { };
|
DxvkBindingMaskV10 dummyBindingMask = { };
|
||||||
|
|
||||||
if (stageMask & VK_SHADER_STAGE_COMPUTE_BIT) {
|
if (stageMask & VK_SHADER_STAGE_COMPUTE_BIT) {
|
||||||
if (!data.read(dummyBindingMask, version))
|
if (!data.read(dummyBindingMask, version))
|
||||||
|
@ -58,19 +58,8 @@ namespace dxvk {
|
|||||||
|
|
||||||
static_assert(sizeof(DxvkStateCacheHeader) == 12);
|
static_assert(sizeof(DxvkStateCacheHeader) == 12);
|
||||||
|
|
||||||
|
using DxvkBindingMaskV10 = DxvkBindingSet<384>;
|
||||||
class DxvkBindingMaskV8 : DxvkBindingSet<128> {
|
using DxvkBindingMaskV8 = DxvkBindingSet<128>;
|
||||||
|
|
||||||
public:
|
|
||||||
|
|
||||||
DxvkBindingMask convert() const {
|
|
||||||
DxvkBindingMask result = { };
|
|
||||||
for (uint32_t i = 0; i < 128; i++)
|
|
||||||
result.set(i, test(i));
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
class DxvkIlBindingV9 {
|
class DxvkIlBindingV9 {
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user