KhronosGroup / KhronosGroup/Vulkan-Docs
VK_NV_mesh_shader setup for gl_Layer + multiview
- Dominant language
- JavaScript
- Stars
- 3.3k
- Forks
- 549
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 2
Description
How one is supposed to setup VkImage/VkImageView/VkFramebuffer when both layers and multiview are used?
Individually both features use the same fields in \*CreateInfo structures ("arrayLayers" in VkImageCreateInfo, "subresourceRange.layerCount" in VkImageViewCreateInfo, and "layers" in VkFramebufferCreateInfo), but it's not clear how to fill out those fields when both layers and views are used. VkFramebufferCreateInfo documentation even states that layers must be 1 when multiview is used, so multiplying max views and number of layers and then downloading 0..max_views*numlayers-1 layers from an image doesn't work (it seems only the first layer is filled out).
One could say that layers and multiview are incompatible concepts, but there's gl_LayerPerViewNV field in gl_MeshPrimitivesNV array, which indicates they should be usable together. This question (how to setup image(s)/view(s)/framebuffer) also applies to gl_LayerPerViewNV.
Contributor guide
Research direction
Start by reviewing the VkImageCreateInfo, VkImageViewCreateInfo, and VkFramebufferCreateInfo fields cited in the issue, together with VK_NV_mesh_shader and gl_LayerPerViewNV. Determine how array layers, view layer counts, framebuffer layers, and multiview interact. Done means the Vulkan documentation clearly explains the valid setup and expected layer behavior.
Written by the indexing model from the issue text.
Assessment
- Domain
- api, computer-graphics
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100