KhronosGroup / GLSL

GLSL Shading Language Issue Tracker
324 stars 96 forks source link

Add procedure for handling opaque struct members #218

Open sbourasse opened 9 months ago

sbourasse commented 9 months ago

GLSL specification states that opaque types "can only be declared as function parameters or in uniform-qualified variables." (GLSL 4.6 section 4.1.7) making them suitable structure members under OpenGL semantics. However, GL_KHR_vulkan_glsl explicitly forbids such behaviour. Our proposal is to add support for such variables through GL_EXT_vulkan_glsl_relaxed so that existing OpenGL shader codebases can still be used without further changes.

We implemented this method within glslang already, so we will open a PR for it along this one, should it be approved.

CLAassistant commented 9 months ago

CLA assistant check
All committers have signed the CLA.

mbechard commented 9 months ago

This looks good to me