Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/KhronosGroup/SPIRV-Cross.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChip Davis <cdavis@codeweavers.com>2019-08-03 05:02:05 +0300
committerChip Davis <cdavis@codeweavers.com>2019-08-28 21:40:13 +0300
commit5fe1ecc3243cbd87a9141e759b2b9a7f6aefa5f3 (patch)
treec8cfab7a87cefe685a6965310529efe10a8703b5 /shaders
parent3ccfbce2648ad74cbe3f4d24dca5a7aa93507eb9 (diff)
GLSL: Fix post-depth coverage for ESSL.
ESSL does not support `GL_ARB_post_depth_coverage`. There, we must use `GL_EXT_post_depth_coverage`. I've added this as a fallback for desktop as well. Note that `GL_EXT_post_depth_coverage` also requires the fragment shader to set `early_fragment_tests` explicitly, while `GL_ARB_post_depth_coverage` does not. It doesn't really matter either way, since `SPV_KHR_post_depth_coverage` *also* requires both execution modes to be explicitly set.
Diffstat (limited to 'shaders')
-rw-r--r--shaders/frag/post-depth-coverage-es.frag13
1 files changed, 13 insertions, 0 deletions
diff --git a/shaders/frag/post-depth-coverage-es.frag b/shaders/frag/post-depth-coverage-es.frag
new file mode 100644
index 00000000..ecc57e4a
--- /dev/null
+++ b/shaders/frag/post-depth-coverage-es.frag
@@ -0,0 +1,13 @@
+#version 310 es
+#extension GL_EXT_post_depth_coverage : require
+#extension GL_OES_sample_variables : require
+precision mediump float;
+
+layout(early_fragment_tests, post_depth_coverage) in;
+
+layout(location = 0) out vec4 FragColor;
+
+void main()
+{
+ FragColor = vec4(gl_SampleMaskIn[0]);
+}