Commit graph

11 commits

Author SHA1 Message Date
Chris Forbes
6c4b8727ef Fix interface mismatch between VS and GS in deferredshadows
GLSLang determines the content of the builtin block based on the shading
language version. In the case of 420 vs 450, the difference is whether
the gl_CullDistance member is present.

Vulkan requires that the builtin interface block be the same on both
sides of a shader interface not involving the fragment shader, so this
leads to undefined behavior. This is caught by recent versions of the
validation layers.

Fix the issue by using GLSL 450 for both shaders in the pipeline.
2020-01-07 18:27:13 -08:00
Chris Forbes
a05d90c221 Recompile shaders with more modern glslang
The SPIRV previously checked in had various issues -- most commonly, it
would use the VertexId and InstanceId builtins rather than the
replacmenet VertexIndex and InstanceIndex builtins required by Vulkan.
2019-09-06 09:59:45 +01:00
saschawillems
1f3cb12bd3 Removed GL_ARB_separate_shader_objects and GL_ARB_shading_language_420pack extensions from all shaders 2018-11-19 22:05:47 +01:00
saschawillems
648339bbe6 Removed gl_PerVertex overrides
Fixes #509
2018-10-20 18:00:32 +02:00
saschawillems
f1a7e66de1 Removed fragment shader from shadow map generation pipeline 2018-09-16 21:39:31 +02:00
saschawillems
04fdd16076 Enable device features, validation fixes 2016-12-25 12:51:46 +01:00
saschawillems
7f687570d4 Added debug display for light source depth maps and shadow toggle 2016-07-17 18:34:52 +02:00
saschawillems
94d8f7b94a Correct specular highlights, light colors 2016-07-17 15:14:52 +02:00
saschawillems
f3a86c292c Updated deferred shadows example to use new framebuffer class 2016-07-16 23:27:39 +02:00
saschawillems
3339279825 Use scene albedo in final scene composition 2016-07-16 11:54:54 +02:00
saschawillems
a89aebd381 Added shaders for deferred shadow example 2016-07-14 23:44:08 +02:00