mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-08-06 12:15:43 +00:00
1) Append "Shadow" to samplers representing depth textures. 2) Sampling a depth texture returns f32, not vec4<f32> 3) Sampling a depth texture requires a Dref parameter, so we must generate one if none is provided. 4) GLSL requires Dref to be appended to the texture coordinates vector, *unless* it's a samplerCubeArrayShadow, since this would require vec5. In that case, it's passed as a separate parameter. 5) GLSL's textureGather() with a depth sampler always requires a refZ parameter, so provide zero to emulate WGSL's compare-less textureGather(). 6) texelFetch() does not support depth textures, so this will have to be validated out. 7) textureOffset() does not support sampler2DArrayShadow in GLES, so this will have to be validated out. Bug: tint:1298 Change-Id: Idaebe89cac6c1ec97c50a361b1d3aa3b84fb6c12 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/78760 Reviewed-by: Ben Clayton <bclayton@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
80 lines
1.8 KiB
GLSL
80 lines
1.8 KiB
GLSL
SKIP: FAILED
|
|
|
|
#version 310 es
|
|
precision mediump float;
|
|
|
|
uniform highp sampler2DArrayShadow arg_0_1;
|
|
void textureNumLayers_e653c0() {
|
|
int res = textureQueryLevels(arg_0_1);;
|
|
}
|
|
|
|
vec4 vertex_main() {
|
|
textureNumLayers_e653c0();
|
|
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
|
}
|
|
|
|
void main() {
|
|
vec4 inner_result = vertex_main();
|
|
gl_Position = inner_result;
|
|
gl_Position.y = -(gl_Position.y);
|
|
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
|
|
return;
|
|
}
|
|
Error parsing GLSL shader:
|
|
ERROR: 0:6: 'textureQueryLevels' : no matching overloaded function found
|
|
ERROR: 0:6: '=' : cannot convert from ' const float' to ' temp highp int'
|
|
ERROR: 0:6: '' : compilation terminated
|
|
ERROR: 3 compilation errors. No code generated.
|
|
|
|
|
|
|
|
#version 310 es
|
|
precision mediump float;
|
|
|
|
uniform highp sampler2DArrayShadow arg_0_1;
|
|
void textureNumLayers_e653c0() {
|
|
int res = textureQueryLevels(arg_0_1);;
|
|
}
|
|
|
|
void fragment_main() {
|
|
textureNumLayers_e653c0();
|
|
}
|
|
|
|
void main() {
|
|
fragment_main();
|
|
return;
|
|
}
|
|
Error parsing GLSL shader:
|
|
ERROR: 0:6: 'textureQueryLevels' : no matching overloaded function found
|
|
ERROR: 0:6: '=' : cannot convert from ' const float' to ' temp mediump int'
|
|
ERROR: 0:6: '' : compilation terminated
|
|
ERROR: 3 compilation errors. No code generated.
|
|
|
|
|
|
|
|
#version 310 es
|
|
precision mediump float;
|
|
|
|
uniform highp sampler2DArrayShadow arg_0_1;
|
|
void textureNumLayers_e653c0() {
|
|
int res = textureQueryLevels(arg_0_1);;
|
|
}
|
|
|
|
void compute_main() {
|
|
textureNumLayers_e653c0();
|
|
}
|
|
|
|
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
|
void main() {
|
|
compute_main();
|
|
return;
|
|
}
|
|
Error parsing GLSL shader:
|
|
ERROR: 0:6: 'textureQueryLevels' : no matching overloaded function found
|
|
ERROR: 0:6: '=' : cannot convert from ' const float' to ' temp highp int'
|
|
ERROR: 0:6: '' : compilation terminated
|
|
ERROR: 3 compilation errors. No code generated.
|
|
|
|
|
|
|