Skip to content

VSG built in flat shader doesn't compile #1720

Description

@hytel

So, I'm taking the plunge, and upgrading my huge VSG application from 1.1.11 to 1.1.15 and I'm getting a crash on the first compile. To the console I get:

Warning: GLSL source failed to parse.
Warning: glslang info log:
ERROR: 0:69: '=' : cannot convert from ' global highp 4-component vector of float' to ' temp highp float'
ERROR: 0:69: '' : missing #endif
ERROR: 0:69: '' : compilation terminated
ERROR: 3 compilation errors. No code generated.

I can see line 69 which is:

69: float v = texture(diffuseMap, texCoordDiffuse);

Which indeed could be an error because texture should return a vec4 but it's being assigned to a single float value. I looked to see how I got this fragment shader and it appears to be because I called vsg::createFlatShadedShaderSet and it didn't have one in it's list, so it creates one using the binary array down in the shaders sub-folder:

VulkanSceneGraph-1.1.15\src\vsg\utils\shaders\flat_ShaderSet.cpp

It looks like this may have been changed in 1.1.14 to include this line.

Is this really an issue, or am I doing something wrong?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions