I am wondering if the injection of the geometry shader forward the gl_ViewportID and gl_LayerID. That might explain the shadow issue.
I believe the experiment 2 is correct.
one way to check would be to make the wires much bigger. I believe this is a shadow issue.
The difference is also noticeable on Metal where no geometry shader in injected. So I believe somethings changes with the Geometry shader injection.
I only took a quick look, but PreprocessGlsl takes a CompileOptions parameter where you can add callbacks to handle include directives (IncluderInterface).
Looks like it! Might be worth…
@LazyDodo I do agree, but can't that be split to a follow up task as this will grow in complexity (have to deal with cmake and that might need your involvement)?
Continuation of blender/blender#127982
Pushed here to make sure to push as a whole commits and show dependencies.