google / google/shaderc

silently fails to compile a simple (but erroneous) fragment shader

Open
#1,240 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2.2k
Forks
445
Avg merge
11h 6m
Merged PRs (30d)
6

Description

the following "celestial_sky.frag":

```
#version 460
#extension GL_KHR_vulkan_glsl : enable
#extension GL_ARB_separate_shader_objects : enable
#extension GL_EXT_multiview : enable

struct UBO_environment
{
mat4 view[2];
mat4 proj[2];
mat4 viewproj[2];
vec4 lightpos[2];
vec4 lightcolor;
vec4 ambientcolor;
vec4 bgcolor;
float skybox_vis;
float near_fog;
float far_fog;
float voxel_size;
float scale;
float tick;
float pad0;
float pad1;
};
struct UBO_draw_multi
{
mat4 model;
mat4 modelview;
mat4 modelviewproj;
};
struct UBO_draw
{
vec4 in_color;
vec4 out_color;
};

layout(set = 0, binding = 0) uniform ue_block
{
UBO_environment ue;
};
layout(set = 0, binding = 1) uniform udm_block
{
UBO_draw_multi udm[2];
};
layout(set = 0, binding = 2) uniform ud_block
{
UBO_draw ud;
};

layout(set = 0, binding = 3) uniform samplerCube colorSampler;

layout(location = 0) in vec3 fragPosition;
layout(location = 0) out vec4 outColor;

void main()
{
vec3 nsample = normalize(fragPosition);
vec4 tex = texture(colorSampler,nsample);
outColor = mix(ue.bgcolor,vec4(1.0,1.0,1.0,1.0),ue.skybox_visibility*tex.r*tex.a);
//outColor = vec4((nsample+vec3(1.0,1.0,1.0))/2.0,1.0);
}
```

has an error on line 58 (`ue.skybox_visibility` isn't a member- `ue.skybox_vis` is).
however, when trying to compile it with:
`C:\VulkanSDK\1.2.198.1/Bin/glslc.exe --target-env=vulkan1.1 -fshader-stage=fragment celestial_sky.frag -o celestial_sky.frag.spv`
rather than reporting the error, it silently crashes

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.