diff --git a/projects/mesh_shader/resources/shaders/shader.frag b/projects/mesh_shader/resources/shaders/shader.frag index 080678beb011afe4b03aed3bf7ae7148b77932dc..bdae07874750818928c0fbc7355e377d0f9f1f09 100644 --- a/projects/mesh_shader/resources/shaders/shader.frag +++ b/projects/mesh_shader/resources/shaders/shader.frag @@ -1,9 +1,9 @@ #version 450 #extension GL_ARB_separate_shader_objects : enable -layout(location = 0) in vec3 fragColor; +//layout(location = 0) in vec3 fragColor; layout(location = 0) out vec4 outColor; void main() { - outColor = vec4(fragColor, 1.0); + outColor = vec4(1.0); } \ No newline at end of file diff --git a/projects/mesh_shader/resources/shaders/shader.mesh b/projects/mesh_shader/resources/shaders/shader.mesh index f4bddd6022a5094ca24ba4c9d1dec3e4f2a903a2..b52a424d510fd978025929159945cfb71bf61368 100644 --- a/projects/mesh_shader/resources/shaders/shader.mesh +++ b/projects/mesh_shader/resources/shaders/shader.mesh @@ -15,5 +15,15 @@ out gl_MeshPerVertexNV { } gl_MeshVerticesNV[]; void main() { - + if(gl_LocalInvocationID.x == 0) + { + gl_PrimitiveCountNV = 1; + gl_PrimitiveIndicesNV[0] = 0; + gl_PrimitiveIndicesNV[1] = 1; + gl_PrimitiveIndicesNV[2] = 2; + + gl_MeshVerticesNV[0].gl_Position = vec4(-0.5, 0.5, -1, 1); + gl_MeshVerticesNV[1].gl_Position = vec4( 0.5, 0.5, -1, 1); + gl_MeshVerticesNV[2].gl_Position = vec4( 0 , -0.5, -1, 1); + } } \ No newline at end of file diff --git a/projects/mesh_shader/resources/shaders/shader.task b/projects/mesh_shader/resources/shaders/shader.task index 3308320ffe96573e3bcb70e910bf9aa6d12bd78d..e9952528647287fba97b1dc37f8132b74d1e16aa 100644 --- a/projects/mesh_shader/resources/shaders/shader.task +++ b/projects/mesh_shader/resources/shaders/shader.task @@ -4,12 +4,15 @@ layout(local_size_x=32) in; -taskNV out Task { - uint baseID; - uint subIDs[32]; -} OUT; +//taskNV out Task { +// uint baseID; +// uint subIDs[32]; +//} OUT; void main() { - + if(gl_LocalInvocationID.x == 0) + { + gl_TaskCountNV = 1; + } } \ No newline at end of file diff --git a/projects/mesh_shader/src/main.cpp b/projects/mesh_shader/src/main.cpp index 5e760256170ab43147823f64d2a861497e9070dc..6fa6c8f65b6b584df6af398e5a56494b75cf67d9 100644 --- a/projects/mesh_shader/src/main.cpp +++ b/projects/mesh_shader/src/main.cpp @@ -156,6 +156,7 @@ int main(int argc, const char** argv) { { vkcv::MeshShaderDrawcall({}, 1) }, { swapchainInput }); + /* core.recordDrawcallsToCmdStream( cmdStream, renderPass, @@ -163,7 +164,7 @@ int main(int argc, const char** argv) { pushConstantData, { drawcall }, { swapchainInput }); - + */ core.prepareSwapchainImageForPresent(cmdStream); core.submitCommandStream(cmdStream);