vkd3d: Store the raw VA index in root signature for root descriptors.
Needed when building device generated commands later. Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
This commit is contained in:
parent
717026f903
commit
128852200a
|
@ -241,6 +241,7 @@ struct vkd3d_shader_root_constant
|
||||||
struct vkd3d_shader_root_descriptor
|
struct vkd3d_shader_root_descriptor
|
||||||
{
|
{
|
||||||
struct vkd3d_shader_resource_binding *binding;
|
struct vkd3d_shader_resource_binding *binding;
|
||||||
|
uint32_t raw_va_root_descriptor_index;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct vkd3d_shader_root_parameter
|
struct vkd3d_shader_root_parameter
|
||||||
|
|
|
@ -945,6 +945,7 @@ static HRESULT d3d12_root_signature_init_root_descriptors(struct d3d12_root_sign
|
||||||
struct vkd3d_shader_resource_binding *binding;
|
struct vkd3d_shader_resource_binding *binding;
|
||||||
VkDescriptorSetLayoutCreateFlags vk_flags;
|
VkDescriptorSetLayoutCreateFlags vk_flags;
|
||||||
struct vkd3d_shader_root_parameter *param;
|
struct vkd3d_shader_root_parameter *param;
|
||||||
|
uint32_t raw_va_root_descriptor_count = 0;
|
||||||
unsigned int hoisted_parameter_index;
|
unsigned int hoisted_parameter_index;
|
||||||
const D3D12_DESCRIPTOR_RANGE1 *range;
|
const D3D12_DESCRIPTOR_RANGE1 *range;
|
||||||
unsigned int i, j, k;
|
unsigned int i, j, k;
|
||||||
|
@ -1061,10 +1062,13 @@ static HRESULT d3d12_root_signature_init_root_descriptors(struct d3d12_root_sign
|
||||||
param = &root_signature->parameters[i];
|
param = &root_signature->parameters[i];
|
||||||
param->parameter_type = p->ParameterType;
|
param->parameter_type = p->ParameterType;
|
||||||
param->descriptor.binding = binding;
|
param->descriptor.binding = binding;
|
||||||
|
param->descriptor.raw_va_root_descriptor_index = raw_va_root_descriptor_count;
|
||||||
|
|
||||||
context->binding_index += 1;
|
context->binding_index += 1;
|
||||||
|
|
||||||
if (!raw_va)
|
if (raw_va)
|
||||||
|
raw_va_root_descriptor_count += 1;
|
||||||
|
else
|
||||||
context->vk_binding += 1;
|
context->vk_binding += 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue