KhronosGroup / KhronosGroup/Vulkan-Docs
Provide functionality equivalent to GL_EXT_shader_framebuffer_fetch
@TomOlson is already working on this.
Since Oct 11, 2021.
- Dominant language
- JavaScript
- Stars
- 3.3k
- Forks
- 549
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 2
Description
Upon my reading of the spec, it seems like I cannot use subpassLoad if I've already written to the subpass input attachment within this subpass.
This is a far reduced featureset compared to OpenGL ES's GL_EXT_shader_framebuffer_fetch or GL_ARM_pixel_local_storage.
Use Case
Multi-Layer Alpha Blending on Mobile GPUs.
The funny thing is that I can implement this on Dekstop GPUs same way I would with Vulkan (pixel shader interlock/ordering) via storage images.
But for Mobile+Intel I am able (and forced to, due to mobile GPUs lacking pixel shader interlock/ordering) to implement a turbo-optimized variant via EXT_shader_framebuffer_fetch having the images as FBO attachments instead of storage images.
Even Metal API has this feature, so its a shame that Vulkan doesn't have it yet.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.