Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ operator+()

static unsafe Matrix4x4 System.Numerics.Matrix4x4.operator+ ( Matrix4x4 value1,
Matrix4x4 value2 )
inlinestatic

Definition at line 133 of file Matrix4x4.cs.

134 {
136 {
137 }
138 if (Sse.IsSupported)
139 {
140 Sse.Store(&value1.M11, Sse.Add(Sse.LoadVector128(&value1.M11), Sse.LoadVector128(&value2.M11)));
141 Sse.Store(&value1.M21, Sse.Add(Sse.LoadVector128(&value1.M21), Sse.LoadVector128(&value2.M21)));
142 Sse.Store(&value1.M31, Sse.Add(Sse.LoadVector128(&value1.M31), Sse.LoadVector128(&value2.M31)));
143 Sse.Store(&value1.M41, Sse.Add(Sse.LoadVector128(&value1.M41), Sse.LoadVector128(&value2.M41)));
144 return value1;
145 }
146 System.Runtime.CompilerServices.Unsafe.SkipInit(out Matrix4x4 result);
147 result.M11 = value1.M11 + value2.M11;
148 result.M12 = value1.M12 + value2.M12;
149 result.M13 = value1.M13 + value2.M13;
150 result.M14 = value1.M14 + value2.M14;
151 result.M21 = value1.M21 + value2.M21;
152 result.M22 = value1.M22 + value2.M22;
153 result.M23 = value1.M23 + value2.M23;
154 result.M24 = value1.M24 + value2.M24;
155 result.M31 = value1.M31 + value2.M31;
156 result.M32 = value1.M32 + value2.M32;
157 result.M33 = value1.M33 + value2.M33;
158 result.M34 = value1.M34 + value2.M34;
159 result.M41 = value1.M41 + value2.M41;
160 result.M42 = value1.M42 + value2.M42;
161 result.M43 = value1.M43 + value2.M43;
162 result.M44 = value1.M44 + value2.M44;
163 return result;
164 }
static unsafe void Store(float *address, Vector128< float > source)
Definition Sse.cs:417
static new bool IsSupported
Definition Sse.cs:30
static unsafe Vector128< float > LoadVector128(float *address)
Definition Sse.cs:257
static Vector128< float > Add(Vector128< float > left, Vector128< float > right)
Definition Sse.cs:32
Matrix4x4(float m11, float m12, float m13, float m14, float m21, float m22, float m23, float m24, float m31, float m32, float m33, float m34, float m41, float m42, float m43, float m44)
Definition Matrix4x4.cs:93

References System.Runtime.Intrinsics.X86.Sse.Add(), System.Runtime.Intrinsics.Arm.AdvSimd.IsSupported, System.Runtime.Intrinsics.X86.Sse.IsSupported, System.Runtime.Intrinsics.X86.Sse.LoadVector128(), System.Numerics.Matrix4x4.M11, System.Numerics.Matrix4x4.M12, System.Numerics.Matrix4x4.M13, System.Numerics.Matrix4x4.M14, System.Numerics.Matrix4x4.M21, System.Numerics.Matrix4x4.M22, System.Numerics.Matrix4x4.M23, System.Numerics.Matrix4x4.M24, System.Numerics.Matrix4x4.M31, System.Numerics.Matrix4x4.M32, System.Numerics.Matrix4x4.M33, System.Numerics.Matrix4x4.M34, System.Numerics.Matrix4x4.M41, System.Numerics.Matrix4x4.M42, System.Numerics.Matrix4x4.M43, System.Numerics.Matrix4x4.M44, and System.Runtime.Intrinsics.X86.Sse.Store().