summaryrefslogtreecommitdiff
path: root/D139078.diff
diff options
context:
space:
mode:
Diffstat (limited to 'D139078.diff')
-rw-r--r--D139078.diff94
1 files changed, 94 insertions, 0 deletions
diff --git a/D139078.diff b/D139078.diff
new file mode 100644
index 0000000..8198e1a
--- /dev/null
+++ b/D139078.diff
@@ -0,0 +1,94 @@
+diff --git a/gfx/wr/swgl/src/glsl.h b/gfx/wr/swgl/src/glsl.h
+--- a/gfx/wr/swgl/src/glsl.h
++++ b/gfx/wr/swgl/src/glsl.h
+@@ -2301,20 +2301,12 @@
+ const vec2& operator[](int index) const { return data[index]; }
+ mat2() = default;
+
+- IMPLICIT mat2(Float a) {
+- data[0] = vec2(a);
+- data[1] = vec2(a);
+- }
++ IMPLICIT constexpr mat2(Float a) : data{vec2(a), vec2(a)} {}
+
+- mat2(vec2 a, vec2 b) {
+- data[0] = a;
+- data[1] = b;
+- }
++ constexpr mat2(vec2 a, vec2 b) : data{a, b} {}
+ IMPLICIT mat2(const mat4& mat);
+- IMPLICIT constexpr mat2(mat2_scalar s) {
+- data[0] = vec2(s.data[0]);
+- data[1] = vec2(s.data[1]);
+- }
++ IMPLICIT constexpr mat2(mat2_scalar s)
++ : data{vec2(s.data[0]), vec2(s.data[1])} {}
+
+ friend vec2 operator*(mat2 m, vec2 v) {
+ vec2 u;
+@@ -2404,30 +2396,19 @@
+ vec3& operator[](int index) { return data[index]; }
+ const vec3& operator[](int index) const { return data[index]; }
+ mat3() = default;
+- mat3(vec3 a, vec3 b, vec3 c) {
+- data[0] = a;
+- data[1] = b;
+- data[2] = c;
+- }
++ constexpr mat3(vec3 a, vec3 b, vec3 c) : data{a, b, c} {}
+
+- IMPLICIT constexpr mat3(mat3_scalar s) {
+- data[0] = vec3(s.data[0]);
+- data[1] = vec3(s.data[1]);
+- data[2] = vec3(s.data[2]);
+- }
+- constexpr mat3(mat3_scalar s0, mat3_scalar s1, mat3_scalar s2,
+- mat3_scalar s3) {
+- data[0] = vec3(s0.data[0], s1.data[0], s2.data[0], s3.data[0]);
+- data[1] = vec3(s0.data[1], s1.data[1], s2.data[1], s3.data[1]);
+- data[2] = vec3(s0.data[2], s1.data[2], s2.data[2], s3.data[2]);
+- }
++ IMPLICIT constexpr mat3(mat3_scalar s)
++ : data{vec3(s.data[0]), vec3(s.data[1]), vec3(s.data[2])} {}
++
++ constexpr mat3(mat3_scalar s0, mat3_scalar s1, mat3_scalar s2, mat3_scalar s3)
++ : data{vec3(s0.data[0], s1.data[0], s2.data[0], s3.data[0]),
++ vec3(s0.data[1], s1.data[1], s2.data[1], s3.data[1]),
++ vec3(s0.data[2], s1.data[2], s2.data[2], s3.data[2])} {}
+
+ constexpr mat3(Float d1, Float d2, Float d3, Float d4, Float d5, Float d6,
+- Float d7, Float d8, Float d9) {
+- data[0] = vec3(d1, d2, d3);
+- data[1] = vec3(d4, d5, d6);
+- data[2] = vec3(d7, d8, d9);
+- }
++ Float d7, Float d8, Float d9)
++ : data{vec3(d1, d2, d3), vec3(d4, d5, d6), vec3(d7, d8, d9)} {}
+
+ IMPLICIT mat3(const mat4& mat);
+
+@@ -2597,19 +2578,11 @@
+ vec4 data[4];
+
+ mat4() = default;
+- IMPLICIT constexpr mat4(mat4_scalar s) {
+- data[0] = vec4(s.data[0]);
+- data[1] = vec4(s.data[1]);
+- data[2] = vec4(s.data[2]);
+- data[3] = vec4(s.data[3]);
+- }
++ IMPLICIT constexpr mat4(mat4_scalar s)
++ : data{vec4(s.data[0]), vec4(s.data[1]), vec4(s.data[2]),
++ vec4(s.data[3])} {}
+
+- mat4(vec4 a, vec4 b, vec4 c, vec4 d) {
+- data[0] = a;
+- data[1] = b;
+- data[2] = c;
+- data[3] = d;
+- }
++ constexpr mat4(vec4 a, vec4 b, vec4 c, vec4 d) : data{a, b, c, d} {}
+
+ vec4& operator[](int index) { return data[index]; }
+ const vec4& operator[](int index) const { return data[index]; }
+
bgstack15