KhronosGroup / KhronosGroup/GLSL
Defining Interface Matching in GLSL without any API dependencies
- Dominant language
- JavaScript
- Stars
- 458
- Forks
- 114
- Avg merge
- 4m
- Merged PRs (30d)
- 1
Description
GLSL is used both with OpenGL API and is lowered to SPIRV and used with Vulkan API
Vulkan interface matching requirements are at SPIRV level
https://docs.vulkan.org/spec/latest/chapters/interfaces.html
OpenGL Spec section **7.4.1 Shader Interface Matching** spells out the GLSL requirements for shader interface matching.
GL_KHR_vulkan_glsl introduced some language for Vulkan, but it's not clear on whether location matching is permitted. What are the requirements for name matching?
It's better to clearly define the interface matching requirements in GLSL spec without any API dependencies. This will make interface matching language less ambiguous on Vulkan.
This bug is created to clarify the interface matching requirements when using GLSL for any API.
As part of the bug, we should define interface matching requirements in the language without referring to API environment specs.
Contributor guide
Research direction
Read the Vulkan interface matching specification linked in the issue alongside OpenGL Spec section 7.4.1, Shader Interface Matching. Determine how name and location matching should be defined in the GLSL specification without API-dependent wording. Done means the GLSL specification clearly states the interface matching requirements for any API.
Written by the indexing model from the issue text.
Assessment
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100