remove the GLSL spec wording;
reorder some elementary operators; disable assignment "=" and equality "==" "!=" operators - they are handled internally by the assembly generator; fix minor typos
This commit is contained in:
+1564
-1742
File diff suppressed because it is too large
Load Diff
@@ -63,30 +63,12 @@
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"int __constructor (const float _f) {\n"
|
||||
" int _i;\n"
|
||||
" __asm float_to_int _i, _f;\n"
|
||||
" return _i;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"bool __constructor (const int _i) {\n"
|
||||
" return _i != 0;\n"
|
||||
"}\n"
|
||||
@@ -95,11 +77,6 @@
|
||||
" return _f != 0.0;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"int __constructor (const bool _b) {\n"
|
||||
" return _b ? 1 : 0;\n"
|
||||
"}\n"
|
||||
@@ -108,20 +85,12 @@
|
||||
" return _b ? 1.0 : 0.0;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"float __constructor (const int _i) {\n"
|
||||
" float _f;\n"
|
||||
" __asm int_to_float _f, _i;\n"
|
||||
" return _f;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"bool __constructor (const bool _b) {\n"
|
||||
" return _b;\n"
|
||||
"}\n"
|
||||
@@ -134,30 +103,6 @@
|
||||
" return _f;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"vec2 __constructor (const float _f) {\n"
|
||||
" return vec2 (_f, _f);\n"
|
||||
"}\n"
|
||||
@@ -266,17 +211,6 @@
|
||||
" return bvec4 (_i, _i, _i, _i);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"mat2 __constructor (const float _f) {\n"
|
||||
" return mat2 (\n"
|
||||
" _f, .0,\n"
|
||||
@@ -369,65 +303,40 @@
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"void __operator = (out float a, const float b) {\n"
|
||||
" __asm float_copy a, b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out int a, const int b) {\n"
|
||||
" __asm int_copy a, b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out bool a, const bool b) {\n"
|
||||
" __asm bool_copy a, b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out vec2 v, const vec2 u) {\n"
|
||||
" v.x = u.x, v.y = u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out vec3 v, const vec3 u) {\n"
|
||||
" v.x = u.x, v.y = u.y, v.z = u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out vec4 v, const vec4 u) {\n"
|
||||
" v.x = u.x, v.y = u.y, v.z = u.z, v.w = u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out ivec2 v, const ivec2 u) {\n"
|
||||
" v.x = u.x, v.y = u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out ivec3 v, const ivec3 u) {\n"
|
||||
" v.x = u.x, v.y = u.y, v.z = u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out ivec4 v, const ivec4 u) {\n"
|
||||
" v.x = u.x, v.y = u.y, v.z = u.z, v.w = u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out bvec2 v, const bvec2 u) {\n"
|
||||
" v.x = u.x, v.y = u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out bvec3 v, const bvec3 u) {\n"
|
||||
" v.x = u.x, v.y = u.y, v.z = u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out bvec4 v, const bvec4 u) {\n"
|
||||
" v.x = u.x, v.y = u.y, v.z = u.z, v.w = u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out mat2 m, const mat2 n) {\n"
|
||||
" m[0] = n[0], m[1] = n[1];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out mat3 m, const mat3 n) {\n"
|
||||
" m[0] = n[0], m[1] = n[1], m[2] = n[2];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator = (out mat4 m, const mat4 n) {\n"
|
||||
" m[0] = n[0], m[1] = n[1], m[2] = n[2], m[3] = n[3];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
@@ -438,6 +347,12 @@
|
||||
" __asm float_add a, a, b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"float __operator - (const float a) {\n"
|
||||
" float c;\n"
|
||||
" __asm float_negate c, a;\n"
|
||||
" return c;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator -= (inout float a, const float b) {\n"
|
||||
" a += -b;\n"
|
||||
"}\n"
|
||||
@@ -450,20 +365,42 @@
|
||||
" __asm float_divide a, a, b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator += (inout int x, const int y) {\n"
|
||||
" x = int (float (x) + float (y));\n"
|
||||
"float __operator + (const float a, const float b) {\n"
|
||||
" float c;\n"
|
||||
" c = a;\n"
|
||||
" return c += b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator -= (inout int x, const int y) {\n"
|
||||
" x += -y;\n"
|
||||
"void __operator += (inout int a, const int b) {\n"
|
||||
" a = int (float (a) + float (b));\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator *= (inout int x, const int y) {\n"
|
||||
" x = int (float (x) * float (y));\n"
|
||||
"int __operator - (const int a) {\n"
|
||||
" return int (-float (a));\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator /= (inout int x, const int y) {\n"
|
||||
" x = int (float (x) / float (y));\n"
|
||||
"void __operator -= (inout int a, const int b) {\n"
|
||||
" a += -b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"float __operator * (const float a, const float b) {\n"
|
||||
" float c;\n"
|
||||
" c = a;\n"
|
||||
" return c *= b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator *= (inout int a, const int b) {\n"
|
||||
" a = int (float (a) * float (b));\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"float __operator / (const float a, const float b) {\n"
|
||||
" float c;\n"
|
||||
" c = a;\n"
|
||||
" return c /= b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator /= (inout int a, const int b) {\n"
|
||||
" a = int (float (a) / float (b));\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator += (inout vec2 v, const vec2 u) {\n"
|
||||
@@ -566,10 +503,21 @@
|
||||
" m[0] += n[0], m[1] += n[1];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator -= (inout mat2 v, const mat2 n) {\n"
|
||||
"void __operator -= (inout mat2 m, const mat2 n) {\n"
|
||||
" m[0] -= n[0], m[1] -= n[1];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec2 __operator * (const mat2 m, const vec2 v) {\n"
|
||||
" return vec2 (\n"
|
||||
" v.x * m[0].x + v.y * m[1].x,\n"
|
||||
" v.x * m[0].y + v.y * m[1].y\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"mat2 __operator * (const mat2 m, const mat2 n) {\n"
|
||||
" return mat2 (m * n[0], m * n[1]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator *= (inout mat2 m, const mat2 n) {\n"
|
||||
" m = m * n;\n"
|
||||
"}\n"
|
||||
@@ -586,6 +534,18 @@
|
||||
" m[0] -= n[0], m[1] -= n[1], m[2] -= n[2];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec3 __operator * (const mat3 m, const vec3 v) {\n"
|
||||
" return vec3 (\n"
|
||||
" v.x * m[0].x + v.y * m[1].x + v.z * m[2].x,\n"
|
||||
" v.x * m[0].y + v.y * m[1].y + v.z * m[2].y,\n"
|
||||
" v.x * m[0].z + v.y * m[1].z + v.z * m[2].z\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"mat3 __operator * (const mat3 m, const mat3 n) {\n"
|
||||
" return mat3 (m * n[0], m * n[1], m * n[2]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator *= (inout mat3 m, const mat3 n) {\n"
|
||||
" m = m * n;\n"
|
||||
"}\n"
|
||||
@@ -602,6 +562,19 @@
|
||||
" m[0] -= n[0], m[1] -= n[1], m[2] -= n[2], m[3] -= n[3];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec4 __operator * (const mat4 m, const vec4 v) {\n"
|
||||
" return vec4 (\n"
|
||||
" v.x * m[0].x + v.y * m[1].x + v.z * m[2].x + v.w * m[3].x,\n"
|
||||
" v.x * m[0].y + v.y * m[1].y + v.z * m[2].y + v.w * m[3].y,\n"
|
||||
" v.x * m[0].z + v.y * m[1].z + v.z * m[2].z + v.w * m[3].z,\n"
|
||||
" v.x * m[0].w + v.y * m[1].w + v.z * m[2].w + v.w * m[3].w\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"mat4 __operator * (const mat4 m, const mat4 n) {\n"
|
||||
" return mat4 (m * n[0], m * n[1], m * n[2], m * n[3]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator *= (inout mat4 m, const mat4 n) {\n"
|
||||
" m = m * n;\n"
|
||||
"}\n"
|
||||
@@ -610,11 +583,6 @@
|
||||
" m[0] /= n[0], m[1] /= n[1], m[2] /= n[2], m[3] /= n[3];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"void __operator += (inout vec2 v, const float a) {\n"
|
||||
" v.x += a, v.y += a;\n"
|
||||
"}\n"
|
||||
@@ -711,73 +679,64 @@
|
||||
" m[0] /= a, m[1] /= a, m[2] /= a, m[3] /= a;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"vec2 __operator * (const vec2 v, const mat2 m) {\n"
|
||||
" return vec2 (\n"
|
||||
" v.x * m[0].x + v.y * m[0].y,\n"
|
||||
" v.x * m[1].x + v.y * m[1].y\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator *= (inout vec2 v, const mat2 m) {\n"
|
||||
" v = v * m;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec3 __operator * (const vec3 v, const mat3 m) {\n"
|
||||
" return vec3 (\n"
|
||||
" v.x * m[0].x + v.y * m[0].y + v.z * m[0].z,\n"
|
||||
" v.x * m[1].x + v.y * m[1].y + v.z * m[1].z,\n"
|
||||
" v.x * m[2].x + v.y * m[2].y + v.z * m[2].z\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator *= (inout vec3 v, const mat3 m) {\n"
|
||||
" v = v * m;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"void __operator *= (inout vec4 v, const mat4 m) {\n"
|
||||
" v = v * m;\n"
|
||||
"vec4 __operator * (const vec4 v, const mat4 m) {\n"
|
||||
" return vec4 (\n"
|
||||
" v.x * m[0].x + v.y * m[0].y + v.z * m[0].z + v.w * m[0].w,\n"
|
||||
" v.x * m[1].x + v.y * m[1].y + v.z * m[1].z + v.w * m[1].w,\n"
|
||||
" v.x * m[2].x + v.y * m[2].y + v.z * m[2].z + v.w * m[2].w,\n"
|
||||
" v.x * m[3].x + v.y * m[3].y + v.z * m[3].z + v.w * m[3].w\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"float __operator + (const float a, const float b) {\n"
|
||||
" float c = a;\n"
|
||||
" return c += b;\n"
|
||||
"void __operator *= (inout vec4 v, const mat4 m) {\n"
|
||||
" v = v * m;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"float __operator - (const float a, const float b) {\n"
|
||||
" return a + -b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"float __operator * (const float a, const float b) {\n"
|
||||
" float c = a;\n"
|
||||
" return c *= b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"float __operator / (const float a, const float b) {\n"
|
||||
" float c = a;\n"
|
||||
" return c /= b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"int __operator + (const int a, const int b) {\n"
|
||||
" int c = a;\n"
|
||||
" int c;\n"
|
||||
" c = a;\n"
|
||||
" return c += b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"int __operator - (const int x, const int y) {\n"
|
||||
" return x + -y;\n"
|
||||
"int __operator - (const int a, const int b) {\n"
|
||||
" return a + -b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"int __operator * (const int x, const int y) {\n"
|
||||
" int z = x;\n"
|
||||
" return z *= y;\n"
|
||||
"int __operator * (const int a, const int b) {\n"
|
||||
" int c;\n"
|
||||
" return (c = a) *= b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"int __operator / (const int x, const int y) {\n"
|
||||
" int z = x;\n"
|
||||
" return z /= y;\n"
|
||||
"int __operator / (const int a, const int b) {\n"
|
||||
" int c;\n"
|
||||
" return (c = a) /= b;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec2 __operator + (const vec2 v, const vec2 u) {\n"
|
||||
@@ -852,10 +811,6 @@
|
||||
" return mat4 (m[0] - n[0], m[1] - n[1], m[2] - n[2], m[3] - n[3]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"vec2 __operator + (const float a, const vec2 u) {\n"
|
||||
" return vec2 (a + u.x, a + u.y);\n"
|
||||
"}\n"
|
||||
@@ -1048,10 +1003,6 @@
|
||||
" return mat4 (m[0] / b, m[1] / b, m[2] / b, m[3] / b);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"ivec2 __operator + (const int a, const ivec2 u) {\n"
|
||||
" return ivec2 (a + u.x, a + u.y);\n"
|
||||
"}\n"
|
||||
@@ -1148,70 +1099,6 @@
|
||||
" return ivec4 (v.x / b, v.y / b, v.z / b, v.w / b);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"vec2 __operator * (const mat2 m, const vec2 v) {\n"
|
||||
" return vec2 (\n"
|
||||
" v.x * m[0].x + v.y * m[1].x,\n"
|
||||
" v.x * m[0].y + v.y * m[1].y\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec2 __operator * (const vec2 v, const mat2 m) {\n"
|
||||
" return vec2 (\n"
|
||||
" v.x * m[0].x + v.y * m[0].y,\n"
|
||||
" v.x * m[1].x + v.y * m[1].y\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec3 __operator * (const mat3 m, const vec3 v) {\n"
|
||||
" return vec3 (\n"
|
||||
" v.x * m[0].x + v.y * m[1].x + v.z * m[2].x,\n"
|
||||
" v.x * m[0].y + v.y * m[1].y + v.z * m[2].y,\n"
|
||||
" v.x * m[0].z + v.y * m[1].z + v.z * m[2].z\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec3 __operator * (const vec3 v, const mat3 m) {\n"
|
||||
" return vec3 (\n"
|
||||
" v.x * m[0].x + v.y * m[0].y + v.z * m[0].z,\n"
|
||||
" v.x * m[1].x + v.y * m[1].y + v.z * m[1].z,\n"
|
||||
" v.x * m[2].x + v.y * m[2].y + v.z * m[2].z\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec4 __operator * (const mat4 m, const vec4 v) {\n"
|
||||
" return vec4 (\n"
|
||||
" v.x * m[0].x + v.y * m[1].x + v.z * m[2].x + v.w * m[3].x,\n"
|
||||
" v.x * m[0].y + v.y * m[1].y + v.z * m[2].y + v.w * m[3].y,\n"
|
||||
" v.x * m[0].z + v.y * m[1].z + v.z * m[2].z + v.w * m[3].z,\n"
|
||||
" v.x * m[0].w + v.y * m[1].w + v.z * m[2].w + v.w * m[3].w\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec4 __operator * (const vec4 v, const mat4 m) {\n"
|
||||
" return vec4 (\n"
|
||||
" v.x * m[0].x + v.y * m[0].y + v.z * m[0].z + v.w * m[0].w,\n"
|
||||
" v.x * m[1].x + v.y * m[1].y + v.z * m[1].z + v.w * m[1].w,\n"
|
||||
" v.x * m[2].x + v.y * m[2].y + v.z * m[2].z + v.w * m[2].w,\n"
|
||||
" v.x * m[3].x + v.y * m[3].y + v.z * m[3].z + v.w * m[3].w\n"
|
||||
" );\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"vec2 __operator * (const vec2 v, const vec2 u) {\n"
|
||||
" return vec2 (v.x * u.x, v.y * u.y);\n"
|
||||
"}\n"
|
||||
@@ -1236,10 +1123,6 @@
|
||||
" return ivec4 (v.x * u.x, v.y * u.y, v.z * u.z, v.w * u.w);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"vec2 __operator / (const vec2 v, const vec2 u) {\n"
|
||||
" return vec2 (v.x / u.x, v.y / u.y);\n"
|
||||
"}\n"
|
||||
@@ -1276,48 +1159,6 @@
|
||||
" return mat4 (m[0] / n[0], m[1] / n[1], m[2] / n[2], m[3] / n[3]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"mat2 __operator * (const mat2 m, const mat2 n) {\n"
|
||||
" return mat2 (m * n[0], m * n[1]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"mat3 __operator * (const mat3 m, const mat3 n) {\n"
|
||||
" return mat3 (m * n[0], m * n[1], m * n[2]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"mat4 __operator * (const mat4 m, const mat4 n) {\n"
|
||||
" return mat4 (m * n[0], m * n[1], m * n[2], m * n[3]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"float __operator - (const float a) {\n"
|
||||
" float c;\n"
|
||||
" __asm float_negate c, a;\n"
|
||||
" return c;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"int __operator - (const int a) {\n"
|
||||
" return int (-float (a));\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"vec2 __operator - (const vec2 v) {\n"
|
||||
" return vec2 (-v.x, -v.y);\n"
|
||||
"}\n"
|
||||
@@ -1354,6 +1195,11 @@
|
||||
" return mat4 (-m[0], -m[1], -m[2], -m[3]);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"void __operator -- (inout float a) {\n"
|
||||
" a -= 1.0;\n"
|
||||
"}\n"
|
||||
@@ -1443,13 +1289,15 @@
|
||||
"}\n"
|
||||
"\n"
|
||||
"float __operator -- (inout float a, const int) {\n"
|
||||
" const float c = a;\n"
|
||||
" float c;\n"
|
||||
" c = a;\n"
|
||||
" --a;\n"
|
||||
" return c;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"int __operator -- (inout int a, const int) {\n"
|
||||
" const int c = a;\n"
|
||||
" int c;\n"
|
||||
" c = a;\n"
|
||||
" --a;\n"
|
||||
" return c;\n"
|
||||
"}\n"
|
||||
@@ -1491,13 +1339,15 @@
|
||||
"}\n"
|
||||
"\n"
|
||||
"float __operator ++ (inout float a, const int) {\n"
|
||||
" const float c = a;\n"
|
||||
" float c;\n"
|
||||
" c = a;\n"
|
||||
" ++a;\n"
|
||||
" return c;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"int __operator ++ (inout int a, const int) {\n"
|
||||
" const int c = a;\n"
|
||||
" int c;\n"
|
||||
" c = a;\n"
|
||||
" ++a;\n"
|
||||
" return c;\n"
|
||||
"}\n"
|
||||
@@ -1538,14 +1388,6 @@
|
||||
" return mat4 (m[0]++, m[1]++, m[2]++, m[3]++);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"bool __operator < (const float a, const float b) {\n"
|
||||
" bool c;\n"
|
||||
" __asm float_less c, a, b;\n"
|
||||
@@ -1587,127 +1429,112 @@
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"bool __operator == (const float a, const float b) {\n"
|
||||
" bool c;\n"
|
||||
" __asm float_equal c, a, b;\n"
|
||||
" return c;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const int a, const int b) {\n"
|
||||
" return float (a) == float (b);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const bool a, const bool b) {\n"
|
||||
" return float (a) == float (b);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const vec2 v, const vec2 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const vec3 v, const vec3 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y && v.z == u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const vec4 v, const vec4 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y && v.z == u.z && v.w == u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const ivec2 v, const ivec2 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const ivec3 v, const ivec3 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y && v.z == u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const ivec4 v, const ivec4 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y && v.z == u.z && v.w == u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const bvec2 v, const bvec2 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const bvec3 v, const bvec3 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y && v.z == u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const bvec4 v, const bvec4 u) {\n"
|
||||
" return v.x == u.x && v.y == u.y && v.z == u.z && v.w == u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const mat2 m, const mat2 n) {\n"
|
||||
" return m[0] == n[0] && m[1] == n[1];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const mat3 m, const mat3 n) {\n"
|
||||
" return m[0] == n[0] && m[1] == n[1] && m[2] == n[2];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator == (const mat4 m, const mat4 n) {\n"
|
||||
" return m[0] == n[0] && m[1] == n[1] && m[2] == n[2] && m[3] == n[3];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const float a, const float b) {\n"
|
||||
" return !(a == b);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const int a, const int b) {\n"
|
||||
" return !(a == b);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const bool a, const bool b) {\n"
|
||||
" return !(a == b);\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const vec2 v, const vec2 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const vec3 v, const vec3 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y || v.z != u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const vec4 v, const vec4 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y || v.z != u.z || v.w != u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const ivec2 v, const ivec2 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const ivec3 v, const ivec3 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y || v.z != u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const ivec4 v, const ivec4 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y || v.z != u.z || v.w != u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const bvec2 v, const bvec2 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const bvec3 v, const bvec3 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y || v.z != u.z;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const bvec4 v, const bvec4 u) {\n"
|
||||
" return v.x != u.x || v.y != u.y || v.z != u.z || v.w != u.w;\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const mat2 m, const mat2 n) {\n"
|
||||
" return m[0] != n[0] || m[1] != n[1];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const mat3 m, const mat3 n) {\n"
|
||||
" return m[0] != n[0] || m[1] != n[1] || m[2] != n[2];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"bool __operator != (const mat4 m, const mat4 n) {\n"
|
||||
" return m[0] != n[0] || m[1] != n[1] || m[2] != n[2] || m[3] != n[3];\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
@@ -1732,11 +1559,6 @@
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"bool __operator ! (const bool a) {\n"
|
||||
" return a == false;\n"
|
||||
"}\n"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user