change to structs
This commit is contained in:
@@ -3,9 +3,11 @@
|
|||||||
layout(binding = 0) uniform sampler2D blockModelAtlas;
|
layout(binding = 0) uniform sampler2D blockModelAtlas;
|
||||||
layout(binding = 2) uniform sampler2D depthTex;
|
layout(binding = 2) uniform sampler2D depthTex;
|
||||||
|
|
||||||
layout(location=1) perprimitiveEXT in PerPrimData {
|
struct PerPrimData {
|
||||||
uvec4 data;
|
uvec4 data;
|
||||||
} primIn;
|
};
|
||||||
|
|
||||||
|
layout(location=1) perprimitiveEXT PerPrimData primIn;
|
||||||
|
|
||||||
layout(location = 0) out vec4 outColour;
|
layout(location = 0) out vec4 outColour;
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
layout(local_size_x = MESH_SIZE, local_size_y=1, local_size_z=1) in;
|
layout(local_size_x = MESH_SIZE, local_size_y=1, local_size_z=1) in;
|
||||||
layout(triangles, max_vertices=(MESH_SIZE*4), max_primitives=(MESH_SIZE*2)) out;
|
layout(triangles, max_vertices=(MESH_SIZE*4), max_primitives=(MESH_SIZE*2)) out;
|
||||||
|
|
||||||
taskPayloadSharedEXT in Task {
|
struct Task {
|
||||||
//Tightly packed, prefix sum + offset
|
//Tightly packed, prefix sum + offset
|
||||||
//uvec4 binA;
|
//uvec4 binA;
|
||||||
//uvec4 binB;
|
//uvec4 binB;
|
||||||
@@ -25,11 +25,15 @@ taskPayloadSharedEXT in Task {
|
|||||||
|
|
||||||
uint baseQuad;
|
uint baseQuad;
|
||||||
uint quadCount;
|
uint quadCount;
|
||||||
} task;
|
};
|
||||||
|
|
||||||
layout(location=1) perprimitiveEXT out PerPrimData {
|
taskPayloadSharedEXT Task task;
|
||||||
|
|
||||||
|
struct PerPrimData {
|
||||||
uvec4 data;
|
uvec4 data;
|
||||||
} primOut[];
|
};
|
||||||
|
|
||||||
|
layout(location=1) perprimitiveEXT PerPrimData primOut[];
|
||||||
|
|
||||||
|
|
||||||
uint getQuadId() {
|
uint getQuadId() {
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ layout(binding = STATISTICS_BUFFER_BINDING, std430) restrict buffer statisticsBu
|
|||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
taskPayloadSharedEXT out Task {
|
struct Task {
|
||||||
//Tightly packed, prefix sum + offset
|
//Tightly packed, prefix sum + offset
|
||||||
//uvec4 binA;
|
//uvec4 binA;
|
||||||
//uvec4 binB;
|
//uvec4 binB;
|
||||||
@@ -46,7 +46,8 @@ taskPayloadSharedEXT out Task {
|
|||||||
|
|
||||||
uint baseQuad;
|
uint baseQuad;
|
||||||
uint quadCount;
|
uint quadCount;
|
||||||
} task;
|
};
|
||||||
|
taskPayloadSharedEXT Task task;
|
||||||
|
|
||||||
#define BIN(br, cnt) if (br) { task.bins[i++] = (sum<<16)|off; sum += cnt; } off += cnt;
|
#define BIN(br, cnt) if (br) { task.bins[i++] = (sum<<16)|off; sum += cnt; } off += cnt;
|
||||||
//#define BIN(br, cnt) if (br) { batch[i++] = (sum<<16)|off; sum += cnt; } off += cnt;
|
//#define BIN(br, cnt) if (br) { batch[i++] = (sum<<16)|off; sum += cnt; } off += cnt;
|
||||||
|
|||||||
Reference in New Issue
Block a user