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
|
||||
*
|
||||
|
@ -12,7 +12,6 @@ namespace dxvk {
|
||||
MaxNumXfbStreams = 4,
|
||||
MaxNumViewports = 16,
|
||||
MaxNumResourceSlots = 1216,
|
||||
MaxNumActiveBindings = 384,
|
||||
MaxNumQueuedCommandBuffers = 18,
|
||||
MaxNumQueryCountPerPool = 128,
|
||||
MaxNumSpecConstants = 12,
|
||||
|
@ -44,19 +44,14 @@ namespace dxvk {
|
||||
return read(data);
|
||||
}
|
||||
|
||||
bool read(DxvkBindingMask& data, uint32_t version) {
|
||||
bool read(DxvkBindingMaskV10& data, uint32_t version) {
|
||||
// v11 removes this field
|
||||
if (version >= 11)
|
||||
return true;
|
||||
|
||||
if (version < 9) {
|
||||
DxvkBindingMaskV8 v8;
|
||||
|
||||
if (!read(v8))
|
||||
return false;
|
||||
|
||||
data = v8.convert();
|
||||
return true;
|
||||
return read(v8);
|
||||
}
|
||||
|
||||
return read(data);
|
||||
@ -577,7 +572,7 @@ namespace dxvk {
|
||||
keys[i] = g_nullShaderKey;
|
||||
}
|
||||
|
||||
DxvkBindingMask dummyBindingMask = { };
|
||||
DxvkBindingMaskV10 dummyBindingMask = { };
|
||||
|
||||
if (stageMask & VK_SHADER_STAGE_COMPUTE_BIT) {
|
||||
if (!data.read(dummyBindingMask, version))
|
||||
|
@ -58,19 +58,8 @@ namespace dxvk {
|
||||
|
||||
static_assert(sizeof(DxvkStateCacheHeader) == 12);
|
||||
|
||||
|
||||
class DxvkBindingMaskV8 : DxvkBindingSet<128> {
|
||||
|
||||
public:
|
||||
|
||||
DxvkBindingMask convert() const {
|
||||
DxvkBindingMask result = { };
|
||||
for (uint32_t i = 0; i < 128; i++)
|
||||
result.set(i, test(i));
|
||||
return result;
|
||||
}
|
||||
|
||||
};
|
||||
using DxvkBindingMaskV10 = DxvkBindingSet<384>;
|
||||
using DxvkBindingMaskV8 = DxvkBindingSet<128>;
|
||||
|
||||
class DxvkIlBindingV9 {
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user