mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-09-25 07:05:48 +00:00
Add struct array to VK_Mesh_Shader task out
This commit is contained in:
@@ -35,9 +35,16 @@ RD_TEST(VK_Mesh_Shader, VulkanGraphicsTest)
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
|
||||
struct Inner
|
||||
{
|
||||
uint a;
|
||||
uint b;
|
||||
};
|
||||
|
||||
struct PayLoad
|
||||
{
|
||||
uint tri[4];
|
||||
Inner inner[4];
|
||||
};
|
||||
|
||||
taskPayloadSharedEXT PayLoad payLoad;
|
||||
@@ -48,6 +55,16 @@ void main()
|
||||
payLoad.tri[1] = 1;
|
||||
payLoad.tri[2] = 2;
|
||||
payLoad.tri[3] = 3;
|
||||
|
||||
payLoad.inner[0].a = 10;
|
||||
payLoad.inner[0].b = 10;
|
||||
payLoad.inner[1].a = 11;
|
||||
payLoad.inner[1].b = 11;
|
||||
payLoad.inner[2].a = 12;
|
||||
payLoad.inner[2].b = 12;
|
||||
payLoad.inner[3].a = 13;
|
||||
payLoad.inner[3].b = 13;
|
||||
|
||||
EmitMeshTasksEXT(4, 1, 1);
|
||||
}
|
||||
|
||||
@@ -58,9 +75,16 @@ void main()
|
||||
#version 460
|
||||
#extension GL_EXT_mesh_shader : require
|
||||
|
||||
struct Inner
|
||||
{
|
||||
uint a;
|
||||
uint b;
|
||||
};
|
||||
|
||||
struct PayLoad
|
||||
{
|
||||
uint tri[4];
|
||||
Inner inner[4];
|
||||
};
|
||||
|
||||
taskPayloadSharedEXT PayLoad payLoad;
|
||||
|
||||
@@ -1007,6 +1007,9 @@ class TestCase:
|
||||
for var in payload.variables:
|
||||
var_data = {}
|
||||
var_data[var.name] = []
|
||||
if (var.type.baseType == rd.VarType.Struct):
|
||||
log.print(f"Ignoring struct variable '{var.name}'")
|
||||
continue
|
||||
# This is not complete to decode all possible payload layouts
|
||||
for i in range(var.type.elements):
|
||||
format = rd.ResourceFormat()
|
||||
|
||||
Reference in New Issue
Block a user