Multiple descriptors #1425
-
I have a scene with one compute pipeline to read from an image (render in another process) and process that image and write the result to a different image. I then pass the result to a graphics pipeline to render to the screen. The problem is that the second image is completely ignored by VSG, that I get this error from the debug layer:
When I switch to write to the first image and render the first image only the output is as expected, so the second descriptorImage must have been ignored somehow. My code is like this:
|
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 10 replies
-
Unfortunately the github code browser doesn't work well for blocks of code as large as this - the lines are wide enough to be cropped then need a scroll bar, but that only appears if you scroll all the way down to the bottom, but then you loose where you were readying. If you have the source code in checked into a repo that is publicly available it'd be easier to review the code and spot errors. |
Beta Was this translation helpful? Give feedback.
-
I haven't yet spotted the error, but a good way of tracking down issues is to enable the API output layer, you can combine this with the vsg::GpuAnnotation instrumentation. The vsgviewer has code that sets up both so have a look at it. This should give you the part of the scene graph and the Vulkan calls that are causing the Vulkan validation error. |
Beta Was this translation helpful? Give feedback.
-
Ahhh, well spotted, a subtle bug. Setting the DescriptorImage::dstBinding for each of the two images is probably all that is required to make sure the descriptors get bound in the right place. |
Beta Was this translation helpful? Give feedback.
Ahhh, well spotted, a subtle bug.
Setting the DescriptorImage::dstBinding for each of the two images is probably all that is required to make sure the descriptors get bound in the right place.