| vkCmdBeginRenderPass(command_buffer, &render_pass_begin_info, VK_SUBPASS_CONTENTS_INLINE); | vkCmdBeginRenderPass(command_buffer, &render_pass_begin_info, VK_SUBPASS_CONTENTS_INLINE); | ||||
| vkCmdBindPipeline(command_buffer, VK_PIPELINE_BIND_POINT_GRAPHICS, pipeline); | vkCmdBindPipeline(command_buffer, VK_PIPELINE_BIND_POINT_GRAPHICS, pipeline); | ||||
| vkCmdDraw(command_buffer, 3, 1, 0, 0); | |||||
| vkCmdDraw(command_buffer, 6, 1, 0, 0); | |||||
| vkCmdEndRenderPass(command_buffer); | vkCmdEndRenderPass(command_buffer); | ||||
| EndQuery(command_buffer, query_pool); | EndQuery(command_buffer, query_pool); | ||||
| } | } |
| #version 450 | #version 450 | ||||
| layout(location = 0) in vec3 fragColor; | |||||
| layout(location = 0) out vec4 outColor; | layout(location = 0) out vec4 outColor; | ||||
| void main() { | void main() { | ||||
| outColor = vec4(1.0, 0.0, 0.0, 1.0); | |||||
| outColor = vec4(fragColor, 1.0); | |||||
| } | } |
| #version 450 | #version 450 | ||||
| vec2 positions[3] = vec2[]( | |||||
| vec2(0.0, -0.5), | |||||
| vec2(0.5, 0.5), | |||||
| vec2(-0.5, 0.5) | |||||
| layout(location = 0) out vec3 fragColor; | |||||
| vec3 positions[6] = vec3[]( | |||||
| vec3(0.5, -0.5, 1.0), | |||||
| vec3(0.5, 0.5, 1.0), | |||||
| vec3(-0.5, 0.5, 1.0), | |||||
| vec3(-0.5, -0.5, 0.0), | |||||
| vec3(0.5, 0.5, 0.0), | |||||
| vec3(-0.5, 0.5, 0.0) | |||||
| ); | |||||
| vec3 colors[6] = vec3[]( | |||||
| vec3(1.0, 0.0, 0.0), | |||||
| vec3(1.0, 0.0, 0.0), | |||||
| vec3(1.0, 0.0, 0.0), | |||||
| vec3(0.0, 1.0, 0.0), | |||||
| vec3(0.0, 1.0, 0.0), | |||||
| vec3(0.0, 1.0, 0.0) | |||||
| ); | ); | ||||
| void main() { | void main() { | ||||
| gl_Position = vec4(positions[gl_VertexIndex], 0.0, 1.0); | |||||
| gl_Position = vec4(positions[gl_VertexIndex], 1.0); | |||||
| fragColor = colors[gl_VertexIndex]; | |||||
| } | } |