Triangle doesn’t show up in Vulkan
I’ve built multiple renderers with Vulkan, but I have no idea what’s wrong here. I’m using dynamic rendering.
Triangle doesn’t show up in Vulkan
I’ve built multiple renderers with Vulkan, but I have no idea what’s wrong here. I’m using dynamic rendering.
What’s the relation between image tiling and image layout?
When someone explains what image tiling is in Vulkan they essentially refer to the layout of the image, and say that OPTIMAL tiling is laid out in such a way that it’s efficient for the GPU to access, and LINEAR is, well I guess raw bytes as you’d expect, pixel for pixel. But this explanation is what I understand VkImageLayout to be. When you transfer an image to get the linear pixels you transition it to TRANSFER layout. When you need it to be accessed by the shader you have it in READ_OPTIMAL or SHADER_READ_OPTIMAL. I know tiling and layout are supposed to be two orthogonal concepts, but they seem the same to me given what I’ve just outlined.
CPU reading while GPU is copying
Is it safe to have the CPU read from a buffer while the same buffer is being used by the GPU as the source of a transfer operation using vkCmdCopyBuffer
?
Vulkan transparency strangeness
I’m modifying a particle system that had been written by a colleague to render by manual blend / set-pixel in the compute pipeline (!) to draw using 2D graphics. I am seeing some strange issues with transparency.
How to Pass Previous Frame as Sampler2D to Fragment Shader in Vulkan?
I am currently developing a Vulkan project and I am facing an issue that I cannot resolve.
How can I get a ‘dispatch id’ in task shader called by vkCmdDrawMeshTasksIndirectEXT?
I fill VkDrawMeshTasksIndirectCommandEXT in one compute shader, then invoke once vkCmdDrawMeshTasksIndirectEXT to draw every thing.
The problem is that I don’t know which instance, which meshlet I am processing in task shader.(If use vertex shader draw pipeline, I can use gl_InstanceID to load the instance data).
How can I get a ‘dispatch id’ in task shader called by vkCmdDrawMeshTasksIndirectEXT?
I fill VkDrawMeshTasksIndirectCommandEXT in one compute shader, then invoke once vkCmdDrawMeshTasksIndirectEXT to draw every thing.
The problem is that I don’t know which instance, which meshlet I am processing in task shader.(If use vertex shader draw pipeline, I can use gl_InstanceID to load the instance data).
Vulkan validation error: “Semaphore must not have any pending operations.” from vkAcquireNextImageKHR
I recently forked an old Vulkan project of mine, written in Java with LWJGL. While I was testing it to start modifying it I noticed the following validation error, generated on each frame:
Vulkan API: Semaphore must not have any pending operations error
I am trying to just display images using the Vulkan API. These are the swapchain images that I initially filled in with some image data using vkCmdCopyBufferToImage
. Here is the draw code: