зеркало из https://github.com/stride3d/xkslang.git
39 строки
747 B
GLSL
39 строки
747 B
GLSL
#version 140
|
|
|
|
void main()
|
|
{
|
|
struct s {
|
|
float y[5];
|
|
} str;
|
|
|
|
float t;
|
|
int index = 5; // all indexing is 4
|
|
|
|
str.y[4] = 2.0; // 2.0
|
|
t = ++str.y[--index]; // 3.0
|
|
str.y[4] += t; // 6.0
|
|
t = str.y[4]--; // 5.0 (t = 6.0)
|
|
str.y[index++] += t; // 11.0
|
|
--str.y[--index]; // 10.0
|
|
|
|
float x = str.y[4];
|
|
++x;
|
|
--x;
|
|
x++;
|
|
x--;
|
|
|
|
// x is 10.0
|
|
|
|
float y = x * ++x; // 10 * 11
|
|
float z = y * x--; // 110 * 11
|
|
|
|
// x is 10.0
|
|
// z is 1210.0
|
|
|
|
vec4 v = vec4(1.0, 2.0, 3.0, 4.0);
|
|
v.y = v.z--; // (1,3,2,4)
|
|
v.x = --v.w; // (3,3,2,3)
|
|
|
|
gl_FragColor = z * v;// (3630.0, 3630.0, 2420.0, 3630.0)
|
|
}
|