diff options
author | Hans-Kristian Arntzen <post@arntzen-software.no> | 2020-06-29 14:23:13 +0300 |
---|---|---|
committer | Hans-Kristian Arntzen <post@arntzen-software.no> | 2020-06-29 14:35:46 +0300 |
commit | 4d79d634f5d03e4a0bc50f518c476793f20370c9 (patch) | |
tree | 74eb3fd1656b9bcb69ec8e66700833978c483b18 /reference/opt/shaders | |
parent | bae76d791597b1a009a268ef7e83f7f445314043 (diff) |
GLSL: Implement switch on ESSL 1.0.
Cannot use switch on legacy ESSL, fallback to plain branches.
Diffstat (limited to 'reference/opt/shaders')
-rw-r--r-- | reference/opt/shaders/legacy/fragment/switch.legacy.frag | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/reference/opt/shaders/legacy/fragment/switch.legacy.frag b/reference/opt/shaders/legacy/fragment/switch.legacy.frag new file mode 100644 index 00000000..21a4d673 --- /dev/null +++ b/reference/opt/shaders/legacy/fragment/switch.legacy.frag @@ -0,0 +1,77 @@ +#version 100 +precision mediump float; +precision highp int; + +varying highp float vIndexF; + +void main() +{ + int _13 = int(vIndexF); + highp vec4 _65; + highp vec4 _66; + highp vec4 _68; + for (int SPIRV_Cross_Dummy = 0; SPIRV_Cross_Dummy < 1; SPIRV_Cross_Dummy++) + { + if (_13 == 2) + { + _68 = vec4(0.0, 2.0, 3.0, 4.0); + break; + } + else if ((_13 == 4) || (_13 == 5)) + { + _68 = vec4(1.0, 2.0, 3.0, 4.0); + break; + } + else if ((_13 == 8) || (_13 == 9)) + { + _68 = vec4(40.0, 20.0, 30.0, 40.0); + break; + } + else if (_13 == 10) + { + _65 = vec4(10.0); + highp vec4 _45 = _65 + vec4(1.0); + _66 = _45; + highp vec4 _48 = _66 + vec4(2.0); + _68 = _48; + break; + } + else if (_13 == 11) + { + _65 = vec4(0.0); + highp vec4 _45 = _65 + vec4(1.0); + _66 = _45; + highp vec4 _48 = _66 + vec4(2.0); + _68 = _48; + break; + } + else if (_13 == 12) + { + _66 = vec4(0.0); + highp vec4 _48 = _66 + vec4(2.0); + _68 = _48; + break; + } + else + { + _68 = vec4(10.0, 20.0, 30.0, 40.0); + break; + } + } + highp vec4 _70; + for (int SPIRV_Cross_Dummy = 0; SPIRV_Cross_Dummy < 1; SPIRV_Cross_Dummy++) + { + if ((_13 == 10) || (_13 == 20)) + { + _70 = vec4(40.0); + break; + } + else + { + _70 = vec4(20.0); + break; + } + } + gl_FragData[0] = _68 + _70; +} + |