2021-01-19 21:33:11 +00:00
|
|
|
uniform float4 u1;
|
|
|
|
float index_by_literal() {
|
|
|
|
return u1[0];
|
|
|
|
}
|
|
|
|
|
|
|
|
uniform float4 u2;
|
|
|
|
float index_by_loop() {
|
|
|
|
float sum = 0;
|
|
|
|
for (int i = 0; i < 4; ++i) {
|
|
|
|
sum += u2[i];
|
|
|
|
}
|
|
|
|
return sum;
|
|
|
|
}
|
|
|
|
|
|
|
|
uniform float4 u3;
|
|
|
|
float index_by_complex_loop() {
|
|
|
|
float prod = 1;
|
|
|
|
for (int i = 0; i < 4; ++i) {
|
|
|
|
prod *= u3[i < 2 ? 0 : i];
|
|
|
|
}
|
|
|
|
return prod;
|
|
|
|
}
|
|
|
|
|
|
|
|
uniform float4 u4;
|
|
|
|
float index_clamped_out_of_bounds() {
|
|
|
|
for (int i = 7; i < 8; i++) {
|
|
|
|
return u4[i];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-04-28 21:41:57 +00:00
|
|
|
float4 main(float2 xy) {
|
2021-01-19 21:33:11 +00:00
|
|
|
return float4(
|
|
|
|
index_by_literal(),
|
|
|
|
index_by_loop(),
|
|
|
|
index_by_complex_loop(),
|
|
|
|
index_clamped_out_of_bounds());
|
|
|
|
}
|