KhronosGroup / KhronosGroup/Vulkan-Samples
Add an Opacity Micromap sample
- Dominant language
- C++
- Stars
- 5.4k
- Forks
- 835
- Avg merge
- 2h 16m
- Merged PRs (30d)
- 1
Description
Hi,
I have been experimenting with an Opacity Micromap sample based on `VK_EXT_opacity_micromap` in my personal fork:
https://github.com/yknishidate/Vulkan-Samples/tree/omm_sample
I know that NVIDIA already provides dedicated samples here:
https://github.com/NVIDIA-RTX/OMM-Samples
However, if there is value in adding an Opacity Micromap sample to the Vulkan-Samples repository as well, I would be happy to prepare a PR. (Unlike NVIDIA’s sample, my sample does not depend on an external OMM SDK; it bakes the OMM using a simple compute shader.)
One thing to note is that my current implementation is based on `VK_EXT_opacity_micromap`. Since the [VK_KHR_opacity_micromap](https://github.com/KhronosGroup/Vulkan-Docs/blob/main/proposals/VK_KHR_opacity_micromap.adoc) specification appears to have been finalized only a few days ago, I am thinking it may be better to wait a little, migrate the sample to the KHR version, and then submit a PR.
Also, the leaf image used as the alpha mask is not included in my current working branch. If the maintainers are open to accepting this sample, I would also like to add the image to the [Vulkan-Samples-Assets](https://github.com/KhronosGroup/Vulkan-Samples-Assets) repository. The image was drawn by myself in Figma.
Please let me know whether this would be a welcome addition, and whether you would prefer the sample to target the KHR version before opening a PR.
Thanks!
Contributor guide
Research direction
Start by reviewing the linked omm_sample branch and the VK_KHR_opacity_micromap proposal, then compare the approach with NVIDIA's OMM-Samples. Done would mean an agreed Vulkan-Samples sample targeting the preferred specification, with its asset handled through Vulkan-Samples-Assets; the issue currently awaits maintainer direction before implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100