KhronosGroup / KhronosGroup/glslang

Uniform names are wiped for OpenGL usage

Open
#3,196 0 comments 0 reactions 0 assignees View on GitHub
enhancement HLSL
Dominant language
C++
Stars
3.6k
Forks
989
Avg merge
1d 2h
Merged PRs (30d)
31

Description

**NOTE:** This issue was originally posted in the [shaderc](https://github.com/google/shaderc/issues/1320) repo, but glslang works as the compiler backend, and I was told it might be more relevant to put here

I am currently working on a project in OpenGL, and I decided to use shaderc to compile HLSL into SPIR-V for usage in OpenGL, and I discovered that when I try to set a uniform, the names are not included with the shader program!

RenderDoc seems to be able to put something together for uniform names(in the direction of `$Globals.uniform49`), but they are barely understandable, and I can't seem to get them to work.

It might be worth noting that I use Vortice.ShaderCompiler for bindings, as shaderc.net presented a ton of issues for me.

Any help is much appreciated, and I am sorry if the issue was poorly composed.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the HLSL-to-SPIR-V flow through shaderc and its glslang backend, then inspect the generated uniform names when the shader is used with OpenGL. Done means uniform names are preserved in a usable form rather than being absent or reduced to unclear generated names.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers, computer-graphics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.