terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches
Matrix.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x0200032A RID: 810
9 public struct Matrix : IEquatable<Matrix>
10 {
11 // Token: 0x170001D7 RID: 471
12 // (get) Token: 0x060012A9 RID: 4777 RVA: 0x0005A288 File Offset: 0x00058488
13 public static Matrix Identity
14 {
15 get
16 {
17 if (!true)
18 {
19 }
20 return 1;
21 }
22 }
23
24 // Token: 0x170001D8 RID: 472
25 // (get) Token: 0x060012AA RID: 4778 RVA: 0x0005A29C File Offset: 0x0005849C
26 // (set) Token: 0x060012AB RID: 4779 RVA: 0x0005A2C0 File Offset: 0x000584C0
28 {
29 get
30 {
31 float m = this.M31;
32 float m2 = this.M32;
33 float m3 = this.M33;
34 Vector3 vector;
35 return vector;
36 }
37 set
38 {
39 }
40 }
41
42 // Token: 0x170001D9 RID: 473
43 // (get) Token: 0x060012AC RID: 4780 RVA: 0x0005A2D0 File Offset: 0x000584D0
44 // (set) Token: 0x060012AD RID: 4781 RVA: 0x0005A2F4 File Offset: 0x000584F4
46 {
47 get
48 {
49 float m = this.M21;
50 float m2 = this.M22;
51 float m3 = this.M23;
52 Vector3 vector;
53 return vector;
54 }
55 set
56 {
57 }
58 }
59
60 // Token: 0x170001DA RID: 474
61 // (get) Token: 0x060012AE RID: 4782 RVA: 0x0005A304 File Offset: 0x00058504
62 // (set) Token: 0x060012AF RID: 4783 RVA: 0x0005A328 File Offset: 0x00058528
64 {
65 get
66 {
67 float m = this.M31;
68 float m2 = this.M32;
69 float m3 = this.M33;
70 Vector3 vector;
71 return vector;
72 }
73 set
74 {
75 }
76 }
77
78 // Token: 0x170001DB RID: 475
79 // (get) Token: 0x060012B0 RID: 4784 RVA: 0x0005A338 File Offset: 0x00058538
80 // (set) Token: 0x060012B1 RID: 4785 RVA: 0x0005A35C File Offset: 0x0005855C
82 {
83 get
84 {
85 float m = this.M11;
86 float m2 = this.M12;
87 float m3 = this.M13;
88 Vector3 vector;
89 return vector;
90 }
91 set
92 {
93 }
94 }
95
96 // Token: 0x170001DC RID: 476
97 // (get) Token: 0x060012B2 RID: 4786 RVA: 0x0005A36C File Offset: 0x0005856C
98 // (set) Token: 0x060012B3 RID: 4787 RVA: 0x0005A390 File Offset: 0x00058590
100 {
101 get
102 {
103 float m = this.M11;
104 float m2 = this.M12;
105 float m3 = this.M13;
106 Vector3 vector;
107 return vector;
108 }
109 set
110 {
111 }
112 }
113
114 // Token: 0x170001DD RID: 477
115 // (get) Token: 0x060012B4 RID: 4788 RVA: 0x0005A3A0 File Offset: 0x000585A0
116 // (set) Token: 0x060012B5 RID: 4789 RVA: 0x0005A3C4 File Offset: 0x000585C4
118 {
119 get
120 {
121 float m = this.M41;
122 float m2 = this.M42;
123 float m3 = this.M43;
124 Vector3 vector;
125 return vector;
126 }
127 set
128 {
129 }
130 }
131
132 // Token: 0x170001DE RID: 478
133 // (get) Token: 0x060012B6 RID: 4790 RVA: 0x0005A3D4 File Offset: 0x000585D4
134 // (set) Token: 0x060012B7 RID: 4791 RVA: 0x0005A3F8 File Offset: 0x000585F8
135 public Vector3 Up
136 {
137 get
138 {
139 float m = this.M21;
140 float m2 = this.M22;
141 float m3 = this.M23;
142 Vector3 vector;
143 return vector;
144 }
145 set
146 {
147 }
148 }
149
150 // Token: 0x060012B8 RID: 4792 RVA: 0x0005A408 File Offset: 0x00058608
151 public Matrix(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)
152 {
153 }
154
155 // Token: 0x060012B9 RID: 4793 RVA: 0x0005A418 File Offset: 0x00058618
156 public static Matrix CreateWorld(Vector3 position, Vector3 forward, Vector3 up)
157 {
158 if (!true)
159 {
160 }
161 return 1;
162 }
163
164 // Token: 0x060012BA RID: 4794 RVA: 0x0005A42C File Offset: 0x0005862C
165 public static void CreateWorld(Vector3 position, Vector3 forward, Vector3 up, [Out] Matrix result)
166 {
167 if (!true)
168 {
169 }
170 Vector3.Normalize(forward, forward);
171 forward.Normalize();
172 forward.Normalize();
173 result.M11 = (float)1;
174 result.M21 = (float)1;
175 float z = position.Z;
176 result.M43 = z;
177 }
178
179 // Token: 0x060012BB RID: 4795 RVA: 0x0005A46C File Offset: 0x0005866C
181 {
182 if (!true)
183 {
184 }
185 return 1;
186 }
187
188 // Token: 0x060012BC RID: 4796 RVA: 0x0005A480 File Offset: 0x00058680
189 public static void CreateShadow(Vector3 lightDirection, Plane plane, [Out] Matrix result)
190 {
191 float d = plane.D;
192 float x = plane.Normal.X;
193 float y = plane.Normal.Y;
194 float z = plane.Normal.Z;
195 float x2 = lightDirection.X;
196 float y2 = lightDirection.Y;
197 float z2 = lightDirection.Z;
198 if (!true)
199 {
200 }
201 float y3 = lightDirection.Y;
202 float z3 = lightDirection.Z;
203 result.M42 = y3;
204 result.M23 = y;
205 result.M43 = y3;
206 result.M44 = d;
207 }
208
209 // Token: 0x060012BD RID: 4797 RVA: 0x0005A508 File Offset: 0x00058708
210 public static void CreateReflection(Plane value, [Out] Matrix result)
211 {
212 float d = value.D;
213 float x = value.Normal.X;
214 float y = value.Normal.Y;
215 float z = value.Normal.Z;
216 result.M41 = x;
217 result.M42 = y;
218 result.M43 = d;
219 result.M33 = z;
220 result.M44 = (float)16256;
221 }
222
223 // Token: 0x060012BE RID: 4798 RVA: 0x0005A56C File Offset: 0x0005876C
225 {
226 if (!true)
227 {
228 }
229 return 1;
230 }
231
232 // Token: 0x060012BF RID: 4799 RVA: 0x0005A580 File Offset: 0x00058780
233 public static Matrix CreateFromYawPitchRoll(float yaw, float pitch, float roll)
234 {
235 if (!true)
236 {
237 }
238 if (!true)
239 {
240 }
242 matrix.M31 = pitch;
243 matrix.M32 = yaw;
245 return 1;
246 }
247
248 // Token: 0x060012C0 RID: 4800 RVA: 0x0005A5AC File Offset: 0x000587AC
249 public static void CreateFromYawPitchRoll(float yaw, float pitch, float roll, [Out] Matrix result)
250 {
251 if (!true)
252 {
253 }
254 if (!true)
255 {
256 }
257 }
258
259 // Token: 0x060012C1 RID: 4801 RVA: 0x0005A5C0 File Offset: 0x000587C0
260 public static void Transform(Matrix value, Quaternion rotation, [Out] Matrix result)
261 {
262 float x = rotation.X;
263 float y = rotation.Y;
264 float z = rotation.Z;
265 float w = rotation.W;
266 if (!true)
267 {
268 }
269 }
270
271 // Token: 0x060012C2 RID: 4802 RVA: 0x0005A5EC File Offset: 0x000587EC
272 public static Matrix Transform(Matrix value, Quaternion rotation)
273 {
274 if (!true)
275 {
276 }
277 return 1;
278 }
279
280 // Token: 0x060012C3 RID: 4803 RVA: 0x0005A600 File Offset: 0x00058800
281 public bool Decompose([Out] Vector3 scale, [Out] Quaternion rotation, [Out] Vector3 translation)
282 {
283 float m = this.M41;
285 float m2 = this.M43;
287 float m3 = this.M11;
288 float m4 = this.M12;
289 float m5 = this.M13;
290 float m6 = this.M14;
291 if (m2 == null)
292 {
293 }
294 float m7 = this.M21;
295 float m8 = this.M22;
296 float m9 = this.M23;
297 float m10 = this.M24;
298 int num;
299 if (num == 0)
300 {
301 }
302 float m11 = this.M31;
303 float m12 = this.M32;
304 float m13 = this.M33;
305 float m14 = this.M34;
306 float m15 = this.M11;
307 float m16 = this.M12;
308 float m17 = this.M13;
309 float m18 = this.M21;
310 float m19 = this.M22;
311 float m20 = this.M23;
312 float m21 = this.M31;
313 float m22 = this.M32;
314 float m23 = this.M33;
315 float m24 = this.M13;
316 rotation.Y = m20;
317 rotation.Z = m19;
318 rotation.W = m18;
319 if (!true)
320 {
321 }
322 if (!true)
323 {
324 return;
325 }
326 }
327
328 // Token: 0x060012C4 RID: 4804 RVA: 0x0005A708 File Offset: 0x00058908
330 {
331 float m = matrix1.M11;
332 float m2 = matrix1.M12;
333 float m3 = matrix2.M12;
334 matrix1.M12 = m3;
335 float m4 = matrix2.M13;
336 float m5 = matrix1.M13;
337 float m6 = matrix1.M14;
338 matrix1.M13 = m4;
339 float m7 = matrix2.M14;
340 matrix1.M14 = m7;
341 float m8 = matrix2.M21;
342 float m9 = matrix1.M21;
343 float m10 = matrix1.M22;
344 matrix1.M21 = m8;
345 float m11 = matrix2.M22;
346 matrix1.M22 = m11;
347 float m12 = matrix2.M23;
348 float m13 = matrix1.M23;
349 float m14 = matrix1.M24;
350 matrix1.M23 = m12;
351 float m15 = matrix2.M24;
353 float m16 = matrix2.M31;
354 float m17 = matrix1.M31;
355 float m18 = matrix1.M32;
357 float m19 = matrix2.M32;
359 float m20 = matrix2.M33;
360 float m21 = matrix1.M33;
361 float m22 = matrix1.M34;
362 matrix1.M33 = m20;
363 float m23 = matrix2.M34;
364 matrix1.M34 = m23;
365 float m24 = matrix2.M41;
366 float m25 = matrix1.M41;
367 float m26 = matrix1.M42;
369 float m27 = matrix2.M42;
371 float m28 = matrix2.M43;
372 float m29 = matrix1.M43;
373 float m30 = matrix1.M44;
375 float m31 = matrix2.M44;
376 matrix1.M44 = m31;
377 float m32 = matrix1.M31;
378 float m33 = matrix1.M32;
379 float m34 = matrix1.M11;
380 float m35 = matrix1.M12;
382 matrix3.M31 = m32;
383 matrix3.M32 = m33;
386 return matrix3;
387 }
388
389 // Token: 0x060012C5 RID: 4805 RVA: 0x0005A8C4 File Offset: 0x00058AC4
390 public static void Add(Matrix matrix1, Matrix matrix2, [Out] Matrix result)
391 {
392 float m = matrix1.M21;
393 float m2 = matrix2.M21;
394 result.M21 = m;
395 float m3 = matrix1.M31;
396 float m4 = matrix2.M31;
397 result.M31 = m3;
398 float m5 = matrix1.M41;
399 float m6 = matrix2.M41;
400 result.M41 = m5;
401 }
402
403 // Token: 0x060012C6 RID: 4806 RVA: 0x0005A914 File Offset: 0x00058B14
405 {
406 if (!true)
407 {
408 }
409 return 1;
410 }
411
412 // Token: 0x060012C7 RID: 4807 RVA: 0x0005A928 File Offset: 0x00058B28
414 {
415 float x = cameraPosition.X;
416 float y = cameraPosition.Y;
417 float z = cameraPosition.Z;
418 float x2 = objectPosition.X;
419 float y2 = objectPosition.Y;
420 float z2 = objectPosition.Z;
421 if (!true)
422 {
423 }
424 Vector3 vector;
427 if (!true)
428 {
429 }
430 if (!true)
431 {
432 }
433 }
434
435 // Token: 0x060012C8 RID: 4808 RVA: 0x000021DB File Offset: 0x000003DB
437 {
438 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
439 }
440
441 // Token: 0x060012C9 RID: 4809 RVA: 0x000021DB File Offset: 0x000003DB
443 {
444 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
445 }
446
447 // Token: 0x060012CA RID: 4810 RVA: 0x000021DB File Offset: 0x000003DB
448 public static Matrix CreateFromAxisAngle(Vector3 axis, float angle)
449 {
450 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
451 }
452
453 // Token: 0x060012CB RID: 4811 RVA: 0x000021DB File Offset: 0x000003DB
454 public static void CreateFromAxisAngle(Vector3 axis, float angle, [Out] Matrix result)
455 {
456 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
457 }
458
459 // Token: 0x060012CC RID: 4812 RVA: 0x0005A97C File Offset: 0x00058B7C
461 {
462 if (!true)
463 {
464 }
465 return 1;
466 }
467
468 // Token: 0x060012CD RID: 4813 RVA: 0x0005A990 File Offset: 0x00058B90
469 public static void CreateFromQuaternion(Quaternion quaternion, [Out] Matrix result)
470 {
471 if (!true)
472 {
473 }
474 if (!true)
475 {
476 }
477 float y = quaternion.Y;
478 float z = quaternion.Z;
479 float w = quaternion.W;
480 result.M31 = y;
481 result.M32 = z;
482 result.M13 = w;
483 result.M33 = y;
484 }
485
486 // Token: 0x060012CE RID: 4814 RVA: 0x0005A9D4 File Offset: 0x00058BD4
488 {
489 if (!true)
490 {
491 }
492 return 1;
493 }
494
495 // Token: 0x060012CF RID: 4815 RVA: 0x0005A9E8 File Offset: 0x00058BE8
497 {
498 float x = cameraTarget.X;
499 float y = cameraTarget.Y;
500 float z = cameraTarget.Z;
501 float x2 = cameraPosition.X;
502 float y2 = cameraPosition.Y;
503 float z2 = cameraPosition.Z;
504 if (!true)
505 {
506 }
507 float z3 = cameraUpVector.Z;
508 float x3 = cameraUpVector.X;
509 float y3 = cameraUpVector.Y;
510 if (!true)
511 {
512 }
513 if (!true)
514 {
515 }
516 result.M13 = x2;
517 result.M23 = y2;
518 result.M12 = x;
519 result.M22 = z2;
520 result.M31 = z;
521 result.M32 = x2;
522 result.M33 = y;
523 float x4 = cameraPosition.X;
524 float y4 = cameraPosition.Y;
525 float z4 = cameraPosition.Z;
526 result.M41 = x3;
527 float x5 = cameraPosition.X;
528 float y5 = cameraPosition.Y;
529 float z5 = cameraPosition.Z;
530 result.M42 = x3;
531 float x6 = cameraPosition.X;
532 float y6 = cameraPosition.Y;
533 float z6 = cameraPosition.Z;
534 result.M43 = x3;
535 }
536
537 // Token: 0x060012D0 RID: 4816 RVA: 0x0005AAF0 File Offset: 0x00058CF0
538 public static Matrix CreateOrthographic(float width, float height, float zNearPlane, float zFarPlane)
539 {
540 if (!true)
541 {
542 }
544 matrix.M44 = (float)16256;
545 return 16256;
546 }
547
548 // Token: 0x060012D1 RID: 4817 RVA: 0x0005AB10 File Offset: 0x00058D10
549 public static void CreateOrthographic(float width, float height, float zNearPlane, float zFarPlane, [Out] Matrix result)
550 {
551 result.M44 = (float)16256;
552 }
553
554 // Token: 0x060012D2 RID: 4818 RVA: 0x0005AB2C File Offset: 0x00058D2C
555 public static Matrix CreateOrthographicOffCenter(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane)
556 {
557 if (!true)
558 {
559 }
562 matrix.M44 = (float)16256;
563 return 16256;
564 }
565
566 // Token: 0x060012D3 RID: 4819 RVA: 0x0005AB54 File Offset: 0x00058D54
567 public static void CreateOrthographicOffCenter(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane, [Out] Matrix result)
568 {
569 result.M41 = left;
570 result.M44 = (float)16256;
571 }
572
573 // Token: 0x060012D4 RID: 4820 RVA: 0x000021DB File Offset: 0x000003DB
574 public static Matrix CreatePerspective(float width, float height, float zNearPlane, float zFarPlane)
575 {
576 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
577 }
578
579 // Token: 0x060012D5 RID: 4821 RVA: 0x000021DB File Offset: 0x000003DB
580 public static void CreatePerspective(float width, float height, float zNearPlane, float zFarPlane, [Out] Matrix result)
581 {
582 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
583 }
584
585 // Token: 0x060012D6 RID: 4822 RVA: 0x0005AB78 File Offset: 0x00058D78
586 public static Matrix CreatePerspectiveFieldOfView(float fieldOfView, float aspectRatio, float nearPlaneDistance, float farPlaneDistance)
587 {
588 if (!true)
589 {
590 }
592 matrix.M31 = aspectRatio;
593 matrix.M32 = fieldOfView;
596 return 1;
597 }
598
599 // Token: 0x060012D7 RID: 4823 RVA: 0x0005ABA8 File Offset: 0x00058DA8
600 public static void CreatePerspectiveFieldOfView(float fieldOfView, float aspectRatio, float nearPlaneDistance, float farPlaneDistance, [Out] Matrix result)
601 {
602 result.M31 = fieldOfView;
603 result.M32 = fieldOfView;
604 result.M11 = fieldOfView;
605 result.M12 = fieldOfView;
606 result.M34 = (float)49024;
607 }
608
609 // Token: 0x060012D8 RID: 4824 RVA: 0x000021DB File Offset: 0x000003DB
610 public static Matrix CreatePerspectiveOffCenter(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane)
611 {
612 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
613 }
614
615 // Token: 0x060012D9 RID: 4825 RVA: 0x000021DB File Offset: 0x000003DB
616 public static void CreatePerspectiveOffCenter(float left, float right, float bottom, float top, float nearPlaneDistance, float farPlaneDistance, [Out] Matrix result)
617 {
618 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
619 }
620
621 // Token: 0x060012DA RID: 4826 RVA: 0x0005ABE4 File Offset: 0x00058DE4
622 public static Matrix CreateRotationX(float radians)
623 {
624 if (!true)
625 {
626 }
627 if (!true)
628 {
629 }
630 if (!true)
631 {
632 }
634 matrix.M21 = (float)1;
635 return 1;
636 }
637
638 // Token: 0x060012DB RID: 4827 RVA: 0x0005AC04 File Offset: 0x00058E04
639 public static void CreateRotationX(float radians, [Out] Matrix result)
640 {
641 if (!true)
642 {
643 }
644 if (!true)
645 {
646 }
648 if (!true)
649 {
650 }
651 }
652
653 // Token: 0x060012DC RID: 4828 RVA: 0x0005AC24 File Offset: 0x00058E24
654 public static Matrix CreateRotationY(float radians)
655 {
656 if (!true)
657 {
658 }
659 if (!true)
660 {
661 }
662 if (!true)
663 {
664 }
666 matrix.M24 = (float)1;
667 return 1;
668 }
669
670 // Token: 0x060012DD RID: 4829 RVA: 0x0005AC44 File Offset: 0x00058E44
671 public static void CreateRotationY(float radians, [Out] Matrix result)
672 {
673 if (!true)
674 {
675 }
676 if (!true)
677 {
678 }
680 if (!true)
681 {
682 }
683 }
684
685 // Token: 0x060012DE RID: 4830 RVA: 0x0005AC64 File Offset: 0x00058E64
686 public static Matrix CreateRotationZ(float radians)
687 {
688 if (!true)
689 {
690 }
691 if (!true)
692 {
693 }
694 if (!true)
695 {
696 }
698 matrix.M43 = (float)1;
699 return 1;
700 }
701
702 // Token: 0x060012DF RID: 4831 RVA: 0x0005AC84 File Offset: 0x00058E84
703 public static void CreateRotationZ(float radians, [Out] Matrix result)
704 {
705 if (!true)
706 {
707 }
708 if (!true)
709 {
710 }
712 if (!true)
713 {
714 }
715 }
716
717 // Token: 0x060012E0 RID: 4832 RVA: 0x0005ACA4 File Offset: 0x00058EA4
718 public static Matrix CreateScale(float scale)
719 {
720 if (!true)
721 {
722 }
723 if (!true)
724 {
725 }
727 matrix.M44 = (float)1;
728 return 1;
729 }
730
731 // Token: 0x060012E1 RID: 4833 RVA: 0x0005ACC0 File Offset: 0x00058EC0
732 public static void CreateScale(float scale, [Out] Matrix result)
733 {
734 if (!true)
735 {
736 }
737 if (!true)
738 {
739 }
740 result.M11 = scale;
741 }
742
743 // Token: 0x060012E2 RID: 4834 RVA: 0x0005ACDC File Offset: 0x00058EDC
744 public static Matrix CreateScale(float xScale, float yScale, float zScale)
745 {
746 if (!true)
747 {
748 }
749 if (!true)
750 {
751 }
753 matrix.M44 = (float)1;
754 return 1;
755 }
756
757 // Token: 0x060012E3 RID: 4835 RVA: 0x0005ACF8 File Offset: 0x00058EF8
758 public static void CreateScale(float xScale, float yScale, float zScale, [Out] Matrix result)
759 {
760 if (!true)
761 {
762 }
763 if (!true)
764 {
765 }
769 }
770
771 // Token: 0x060012E4 RID: 4836 RVA: 0x0005AD20 File Offset: 0x00058F20
773 {
774 if (!true)
775 {
776 }
777 if (!true)
778 {
779 }
781 matrix.M44 = (float)1;
782 return 1;
783 }
784
785 // Token: 0x060012E5 RID: 4837 RVA: 0x0005AD3C File Offset: 0x00058F3C
786 public static void CreateScale(Vector3 scales, [Out] Matrix result)
787 {
788 if (!true)
789 {
790 }
791 if (!true)
792 {
793 }
794 float y = scales.Y;
795 result.M22 = y;
796 float z = scales.Z;
797 result.M33 = z;
798 }
799
800 // Token: 0x060012E6 RID: 4838 RVA: 0x0005AD6C File Offset: 0x00058F6C
801 public static Matrix CreateTranslation(float xPosition, float yPosition, float zPosition)
802 {
803 if (!true)
804 {
805 }
806 if (!true)
807 {
808 }
813 return 1;
814 }
815
816 // Token: 0x060012E7 RID: 4839 RVA: 0x0005AD98 File Offset: 0x00058F98
817 public static void CreateTranslation(float xPosition, float yPosition, float zPosition, [Out] Matrix result)
818 {
819 if (!true)
820 {
821 }
822 if (!true)
823 {
824 }
828 }
829
830 // Token: 0x060012E8 RID: 4840 RVA: 0x0005ADC0 File Offset: 0x00058FC0
831 public static Matrix CreateTranslation(Vector3 position)
832 {
833 if (!true)
834 {
835 }
836 if (!true)
837 {
838 }
839 return 1;
840 }
841
842 // Token: 0x060012E9 RID: 4841 RVA: 0x0005ADD4 File Offset: 0x00058FD4
843 public static void CreateTranslation(Vector3 position, [Out] Matrix result)
844 {
845 if (!true)
846 {
847 }
848 if (!true)
849 {
850 }
851 float z = position.Z;
852 result.M43 = z;
853 }
854
855 // Token: 0x060012EA RID: 4842 RVA: 0x0005ADF8 File Offset: 0x00058FF8
857 {
858 float m = matrix2.M31;
859 float m2 = matrix2.M32;
860 float m3 = matrix2.M11;
861 float m4 = matrix2.M12;
862 if (!true)
863 {
864 }
865 float m5 = matrix1.M13;
866 float m6 = matrix1.M14;
867 float m7 = matrix1.M21;
868 float m8 = matrix1.M22;
869 float m9 = matrix1.M23;
870 float m10 = matrix1.M24;
871 float m11 = matrix1.M31;
872 float m12 = matrix1.M32;
873 float m13 = matrix1.M33;
874 float m14 = matrix1.M34;
875 float m15 = matrix1.M41;
876 float m16 = matrix1.M42;
877 float m17 = matrix1.M43;
878 float m18 = matrix1.M44;
880 matrix3.M11 = m2;
881 matrix3.M12 = m;
882 matrix3.M42 = m3;
883 return matrix1;
884 }
885
886 // Token: 0x060012EB RID: 4843 RVA: 0x0005AEAC File Offset: 0x000590AC
887 public static void Divide(Matrix matrix1, Matrix matrix2, [Out] Matrix result)
888 {
889 float m = matrix2.M31;
890 float m2 = matrix2.M32;
891 float m3 = matrix2.M11;
892 float m4 = matrix2.M12;
893 if (!true)
894 {
895 }
896 float m5 = matrix1.M11;
897 float m6 = matrix1.M12;
898 float m7 = matrix1.M13;
899 float m8 = matrix1.M14;
900 result.M11 = m5;
901 result.M12 = m6;
902 float m9 = matrix1.M12;
903 result.M13 = m7;
904 float m10 = matrix1.M13;
905 float m11 = matrix1.M21;
906 float m12 = matrix1.M22;
907 float m13 = matrix1.M23;
908 float m14 = matrix1.M24;
909 result.M21 = m11;
910 float m15 = matrix1.M21;
911 result.M22 = m12;
912 float m16 = matrix1.M22;
913 result.M23 = m13;
914 float m17 = matrix1.M23;
915 result.M24 = m15;
916 float m18 = matrix1.M31;
917 float m19 = matrix1.M32;
918 float m20 = matrix1.M33;
919 float m21 = matrix1.M34;
920 result.M31 = m18;
921 float m22 = matrix1.M31;
922 result.M32 = m19;
923 float m23 = matrix1.M32;
924 result.M33 = m20;
925 float m24 = matrix1.M33;
926 result.M34 = m22;
927 float m25 = matrix1.M41;
928 float m26 = matrix1.M42;
929 float m27 = matrix1.M43;
930 float m28 = matrix1.M44;
931 float m29 = matrix1.M41;
932 float m30 = matrix1.M42;
933 float m31 = matrix1.M43;
934 }
935
936 // Token: 0x060012EC RID: 4844 RVA: 0x0005B008 File Offset: 0x00059208
937 public static Matrix Divide(Matrix matrix1, float divider)
938 {
939 float m = matrix1.M11;
940 float m2 = matrix1.M12;
941 float m3 = matrix1.M31;
942 float m4 = matrix1.M32;
943 matrix1.M11 = m;
944 matrix1.M12 = m2;
945 matrix1.M31 = m3;
947 float m5 = matrix1.M31;
948 float m6 = matrix1.M32;
949 float m7 = matrix1.M11;
950 float m8 = matrix1.M12;
952 matrix2.M31 = m5;
953 matrix2.M32 = m6;
954 matrix2.M11 = m7;
955 matrix2.M12 = m8;
956 return matrix2;
957 }
958
959 // Token: 0x060012ED RID: 4845 RVA: 0x0005B090 File Offset: 0x00059290
960 public static void Divide(Matrix matrix1, float divider, [Out] Matrix result)
961 {
962 float m = matrix1.M21;
963 result.M21 = m;
964 float m2 = matrix1.M31;
965 result.M31 = m2;
966 float m3 = matrix1.M41;
968 }
969
970 // Token: 0x060012EE RID: 4846 RVA: 0x0005B0C8 File Offset: 0x000592C8
971 public static Matrix Invert(Matrix matrix)
972 {
973 if (!true)
974 {
975 }
977 float m = matrix.M31;
978 float m2 = matrix.M32;
979 float m3 = matrix.M11;
980 float m4 = matrix.M12;
982 matrix2.M31 = m;
983 matrix2.M32 = m2;
984 matrix2.M11 = m3;
985 matrix2.M12 = m4;
986 return 1;
987 }
988
989 // Token: 0x060012EF RID: 4847 RVA: 0x0005B11C File Offset: 0x0005931C
990 public static void Invert(Matrix matrix, [Out] Matrix result)
991 {
992 float m = matrix.M21;
993 float m2 = matrix.M22;
994 float m3 = matrix.M11;
995 float m4 = matrix.M12;
996 float m5 = matrix.M23;
997 float m6 = matrix.M24;
998 float m7 = matrix.M13;
999 float m8 = matrix.M14;
1000 float m9 = matrix.M41;
1001 float m10 = matrix.M42;
1002 float m11 = matrix.M31;
1003 float m12 = matrix.M32;
1004 float m13 = matrix.M43;
1005 float m14 = matrix.M44;
1006 float m15 = matrix.M33;
1007 float m16 = matrix.M34;
1008 result.M11 = m2;
1009 result.M12 = m5;
1010 result.M13 = m3;
1011 result.M14 = m6;
1012 result.M21 = m11;
1013 result.M22 = m7;
1014 result.M23 = m16;
1015 result.M24 = m4;
1016 result.M31 = m;
1017 result.M32 = m15;
1018 result.M34 = m10;
1019 result.M41 = m12;
1020 result.M43 = m9;
1021 result.M44 = m14;
1022 }
1023
1024 // Token: 0x060012F0 RID: 4848 RVA: 0x000021DB File Offset: 0x000003DB
1026 {
1027 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
1028 }
1029
1030 // Token: 0x060012F1 RID: 4849 RVA: 0x000021DB File Offset: 0x000003DB
1031 public static void Lerp(Matrix matrix1, Matrix matrix2, float amount, [Out] Matrix result)
1032 {
1033 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
1034 }
1035
1036 // Token: 0x060012F2 RID: 4850 RVA: 0x0005B214 File Offset: 0x00059414
1038 {
1039 float m = matrix1.M21;
1040 float m2 = matrix1.M13;
1041 float m3 = matrix1.M14;
1042 float m4 = matrix2.M31;
1043 float m5 = matrix2.M32;
1044 float m6 = matrix1.M23;
1045 float m7 = matrix1.M24;
1046 float m8 = matrix1.M31;
1047 float m9 = matrix1.M33;
1048 float m10 = matrix1.M34;
1049 float m11 = matrix1.M41;
1050 float m12 = matrix1.M43;
1051 float m13 = matrix1.M44;
1053 matrix3.M31 = m4;
1054 return matrix3;
1055 }
1056
1057 // Token: 0x060012F3 RID: 4851 RVA: 0x0005B290 File Offset: 0x00059490
1058 public static void Multiply(Matrix matrix1, Matrix matrix2, [Out] Matrix result)
1059 {
1060 float m = matrix1.M11;
1061 float m2 = matrix1.M12;
1062 float m3 = matrix2.M21;
1063 float m4 = matrix2.M31;
1064 float m5 = matrix1.M13;
1065 float m6 = matrix1.M14;
1066 float m7 = matrix2.M41;
1067 float m8 = matrix2.M12;
1068 float m9 = matrix2.M22;
1069 float m10 = matrix2.M32;
1070 float m11 = matrix2.M42;
1071 result.M12 = m8;
1072 float m12 = matrix2.M13;
1073 float m13 = matrix1.M12;
1074 float m14 = matrix2.M23;
1075 float m15 = matrix2.M33;
1076 float m16 = matrix2.M43;
1077 result.M13 = m12;
1078 float m17 = matrix2.M14;
1079 float m18 = matrix2.M24;
1080 float m19 = matrix1.M13;
1081 float m20 = matrix2.M34;
1082 float m21 = matrix2.M44;
1083 result.M14 = m6;
1084 float m22 = matrix1.M21;
1085 float m23 = matrix1.M22;
1086 float m24 = matrix1.M23;
1087 float m25 = matrix1.M24;
1088 result.M21 = m3;
1089 float m26 = matrix1.M21;
1090 float m27 = matrix2.M12;
1091 result.M22 = m3;
1092 float m28 = matrix2.M13;
1093 float m29 = matrix1.M22;
1094 result.M23 = m9;
1095 float m30 = matrix2.M14;
1096 float m31 = matrix1.M23;
1097 result.M24 = m29;
1098 float m32 = matrix1.M31;
1099 float m33 = matrix1.M32;
1100 float m34 = matrix2.M21;
1101 float m35 = matrix1.M33;
1102 float m36 = matrix1.M34;
1103 result.M31 = m4;
1104 float m37 = matrix1.M31;
1105 float m38 = matrix2.M22;
1106 result.M32 = m10;
1107 float m39 = matrix1.M32;
1108 float m40 = matrix2.M23;
1109 result.M33 = m15;
1110 float m41 = matrix2.M24;
1111 float m42 = matrix1.M33;
1112 result.M34 = m37;
1113 float m43 = matrix1.M41;
1114 float m44 = matrix1.M42;
1115 float m45 = matrix2.M31;
1116 float m46 = matrix1.M43;
1117 float m47 = matrix1.M44;
1118 result.M41 = m7;
1119 float m48 = matrix1.M41;
1120 float m49 = matrix2.M32;
1121 result.M42 = m11;
1122 float m50 = matrix1.M42;
1123 float m51 = matrix2.M33;
1124 result.M43 = m16;
1125 float m52 = matrix1.M43;
1126 float m53 = matrix2.M34;
1127 result.M44 = m48;
1128 }
1129
1130 // Token: 0x060012F4 RID: 4852 RVA: 0x0005B4B8 File Offset: 0x000596B8
1131 public static Matrix Multiply(Matrix matrix1, float factor)
1132 {
1133 float m = matrix1.M11;
1134 float m2 = matrix1.M12;
1135 float m3 = matrix1.M31;
1136 float m4 = matrix1.M32;
1137 matrix1.M11 = m;
1138 matrix1.M12 = m2;
1139 matrix1.M31 = m3;
1141 float m5 = matrix1.M31;
1142 float m6 = matrix1.M32;
1143 float m7 = matrix1.M11;
1144 float m8 = matrix1.M12;
1146 matrix2.M31 = m5;
1147 matrix2.M32 = m6;
1148 matrix2.M11 = m7;
1149 matrix2.M12 = m8;
1150 return matrix2;
1151 }
1152
1153 // Token: 0x060012F5 RID: 4853 RVA: 0x0005B540 File Offset: 0x00059740
1154 public static void Multiply(Matrix matrix1, float factor, [Out] Matrix result)
1155 {
1156 float m = matrix1.M21;
1157 result.M21 = m;
1158 float m2 = matrix1.M31;
1159 result.M31 = m2;
1160 float m3 = matrix1.M41;
1162 }
1163
1164 // Token: 0x060012F6 RID: 4854 RVA: 0x0005B578 File Offset: 0x00059778
1166 {
1167 float m = matrix.M11;
1168 float m2 = matrix.M12;
1169 float m3 = matrix.M31;
1170 float m4 = matrix.M32;
1171 matrix.M11 = m;
1172 matrix.M12 = m2;
1173 matrix.M31 = m3;
1174 matrix.M32 = m4;
1175 float m5 = matrix.M31;
1176 float m6 = matrix.M32;
1177 float m7 = matrix.M11;
1178 float m8 = matrix.M12;
1180 matrix2.M31 = m5;
1181 matrix2.M32 = m6;
1182 matrix2.M11 = m7;
1183 matrix2.M12 = m8;
1184 return matrix2;
1185 }
1186
1187 // Token: 0x060012F7 RID: 4855 RVA: 0x0005B600 File Offset: 0x00059800
1188 public static void Negate(Matrix matrix, [Out] Matrix result)
1189 {
1190 float m = matrix.M21;
1191 result.M21 = m;
1192 float m2 = matrix.M31;
1193 result.M31 = m2;
1194 float m3 = matrix.M41;
1195 result.M41 = m3;
1196 }
1197
1198 // Token: 0x060012F8 RID: 4856 RVA: 0x0005B638 File Offset: 0x00059838
1200 {
1201 float m = matrix1.M11;
1202 float m2 = matrix1.M12;
1203 float m3 = matrix2.M12;
1204 matrix1.M12 = m3;
1205 float m4 = matrix2.M13;
1206 float m5 = matrix1.M13;
1207 float m6 = matrix1.M14;
1208 matrix1.M13 = m4;
1209 float m7 = matrix2.M14;
1210 matrix1.M14 = m7;
1211 float m8 = matrix2.M21;
1212 float m9 = matrix1.M21;
1213 float m10 = matrix1.M22;
1214 matrix1.M21 = m8;
1215 float m11 = matrix2.M22;
1216 matrix1.M22 = m11;
1217 float m12 = matrix2.M23;
1218 float m13 = matrix1.M23;
1219 float m14 = matrix1.M24;
1220 matrix1.M23 = m12;
1221 float m15 = matrix2.M24;
1222 matrix1.M24 = m15;
1223 float m16 = matrix2.M31;
1224 float m17 = matrix1.M31;
1225 float m18 = matrix1.M32;
1226 matrix1.M31 = m16;
1227 float m19 = matrix2.M32;
1228 matrix1.M32 = m19;
1229 float m20 = matrix2.M33;
1230 float m21 = matrix1.M33;
1231 float m22 = matrix1.M34;
1232 matrix1.M33 = m20;
1233 float m23 = matrix2.M34;
1234 matrix1.M34 = m23;
1235 float m24 = matrix2.M41;
1236 float m25 = matrix1.M41;
1237 float m26 = matrix1.M42;
1238 matrix1.M41 = m24;
1239 float m27 = matrix2.M42;
1240 matrix1.M42 = m27;
1241 float m28 = matrix2.M43;
1242 float m29 = matrix1.M43;
1243 float m30 = matrix1.M44;
1244 matrix1.M43 = m28;
1245 float m31 = matrix2.M44;
1246 matrix1.M44 = m31;
1247 float m32 = matrix1.M31;
1248 float m33 = matrix1.M32;
1249 float m34 = matrix1.M11;
1250 float m35 = matrix1.M12;
1252 matrix3.M31 = m32;
1253 matrix3.M32 = m33;
1254 matrix3.M11 = m34;
1255 matrix3.M12 = m35;
1256 return matrix3;
1257 }
1258
1259 // Token: 0x060012F9 RID: 4857 RVA: 0x0005B7F4 File Offset: 0x000599F4
1260 public static void Subtract(Matrix matrix1, Matrix matrix2, [Out] Matrix result)
1261 {
1262 float m = matrix1.M21;
1263 float m2 = matrix2.M21;
1264 result.M21 = m;
1265 float m3 = matrix1.M31;
1266 float m4 = matrix2.M31;
1267 result.M31 = m3;
1268 float m5 = matrix1.M41;
1269 float m6 = matrix2.M41;
1270 result.M41 = m5;
1271 }
1272
1273 // Token: 0x060012FA RID: 4858 RVA: 0x0005B844 File Offset: 0x00059A44
1275 {
1276 float m = matrix.M11;
1277 float m2 = matrix.M13;
1278 float m3 = matrix.M21;
1279 float m4 = matrix.M23;
1280 float m5 = matrix.M31;
1281 float m6 = matrix.M33;
1282 float m7 = matrix.M41;
1283 float m8 = matrix.M43;
1284 float m9 = matrix.M13;
1285 float m10 = matrix.M21;
1286 float m11 = matrix.M23;
1287 float m12 = matrix.M31;
1288 float m13 = matrix.M33;
1289 float m14 = matrix.M41;
1290 float m15 = matrix.M43;
1292 matrix2.M11 = m;
1293 matrix2.M13 = m3;
1294 matrix2.M13 = m5;
1295 matrix2.M21 = m7;
1296 matrix2.M21 = m2;
1297 matrix2.M23 = m4;
1298 matrix2.M23 = m6;
1299 matrix2.M31 = m8;
1300 matrix2.M31 = m9;
1301 matrix2.M33 = m11;
1302 matrix2.M33 = m13;
1303 matrix2.M41 = m15;
1304 matrix2.M41 = m10;
1305 matrix2.M43 = m12;
1306 matrix2.M43 = m14;
1307 return matrix2;
1308 }
1309
1310 // Token: 0x060012FB RID: 4859 RVA: 0x0005B93C File Offset: 0x00059B3C
1311 public static void Transpose(Matrix matrix, [Out] Matrix result)
1312 {
1313 float m = matrix.M21;
1314 result.M12 = m;
1315 float m2 = matrix.M31;
1316 result.M13 = m2;
1317 float m3 = matrix.M41;
1318 result.M14 = m3;
1319 float m4 = matrix.M12;
1320 result.M21 = m4;
1321 float m5 = matrix.M22;
1322 result.M22 = m5;
1323 float m6 = matrix.M32;
1324 result.M23 = m6;
1325 float m7 = matrix.M42;
1326 result.M24 = m7;
1327 float m8 = matrix.M13;
1328 result.M31 = m8;
1329 float m9 = matrix.M23;
1330 result.M32 = m9;
1331 float m10 = matrix.M33;
1332 result.M33 = m10;
1333 float m11 = matrix.M43;
1334 result.M34 = m11;
1335 float m12 = matrix.M14;
1336 result.M41 = m12;
1337 float m13 = matrix.M24;
1338 result.M42 = m13;
1339 float m14 = matrix.M34;
1340 result.M43 = m14;
1341 float m15 = matrix.M44;
1342 result.M44 = m15;
1343 }
1344
1345 // Token: 0x060012FC RID: 4860 RVA: 0x0005BA34 File Offset: 0x00059C34
1346 public float Determinant()
1347 {
1348 /*
1349An exception occurred when decompiling this method (060012FC)
1350
1351ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Single Microsoft.Xna.Framework.Matrix::Determinant()
1352
1353 ---> System.Exception: Basic block has to end with unconditional control flow.
1354{
1355 Block_0:
1356 stloc:float32(var_0_06, ldfld:float32(Matrix::M31, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1357 stloc:float32(var_1_0D, ldfld:float32(Matrix::M41, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1358 stloc:float32(var_2_14, ldfld:float32(Matrix::M43, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1359 stloc:float32(var_3_1B, ldfld:float32(Matrix::M44, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1360 stloc:float32(var_4_22, ldfld:float32(Matrix::M33, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1361 stloc:float32(var_5_2A, ldfld:float32(Matrix::M34, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1362 stloc:float32(var_6_32, ldfld:float32(Matrix::M23, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1363 stloc:float32(var_7_3A, ldfld:float32(Matrix::M24, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1364 stloc:float32(var_8_42, ldfld:float32(Matrix::M21, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1365 stloc:float32(var_9_4A, ldfld:float32(Matrix::M13, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1366 stloc:float32(var_10_52, ldfld:float32(Matrix::M14, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1367}
1368
1369 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1370 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1371 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1372 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1373 --- End of inner exception stack trace ---
1374 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1375 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1376*/;
1377 }
1378
1379 // Token: 0x060012FD RID: 4861 RVA: 0x0005BA94 File Offset: 0x00059C94
1380 public bool Equals(Matrix other)
1381 {
1382 /*
1383An exception occurred when decompiling this method (060012FD)
1384
1385ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Microsoft.Xna.Framework.Matrix::Equals(Microsoft.Xna.Framework.Matrix)
1386
1387 ---> System.Exception: Basic block has to end with unconditional control flow.
1388{
1389 Block_0:
1390 stloc:float32(var_0_06, ldfld:float32(Matrix::M12, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1391 stloc:float32(var_1_0D, ldfld:float32(Matrix::M12, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1392 stloc:float32(var_2_14, ldfld:float32(Matrix::M13, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1393 stloc:float32(var_3_1B, ldfld:float32(Matrix::M13, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1394 stloc:float32(var_4_22, ldfld:float32(Matrix::M14, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1395 stloc:float32(var_5_2A, ldfld:float32(Matrix::M14, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1396 stloc:float32(var_6_32, ldfld:float32(Matrix::M21, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1397 stloc:float32(var_7_3A, ldfld:float32(Matrix::M21, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1398 stloc:float32(var_8_42, ldfld:float32(Matrix::M22, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1399 stloc:float32(var_9_4A, ldfld:float32(Matrix::M22, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1400 stloc:float32(var_10_52, ldfld:float32(Matrix::M23, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1401 stloc:float32(var_11_5A, ldfld:float32(Matrix::M23, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1402 stloc:float32(var_12_62, ldfld:float32(Matrix::M24, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1403 stloc:float32(var_13_6A, ldfld:float32(Matrix::M24, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1404 stloc:float32(var_14_72, ldfld:float32(Matrix::M31, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1405 stloc:float32(var_15_7A, ldfld:float32(Matrix::M31, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1406 stloc:float32(var_16_82, ldfld:float32(Matrix::M32, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1407 stloc:float32(var_17_8A, ldfld:float32(Matrix::M32, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1408 stloc:float32(var_18_92, ldfld:float32(Matrix::M33, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1409 stloc:float32(var_19_9A, ldfld:float32(Matrix::M33, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1410 stloc:float32(var_20_A2, ldfld:float32(Matrix::M34, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1411 stloc:float32(var_21_AA, ldfld:float32(Matrix::M34, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1412 stloc:float32(var_22_B2, ldfld:float32(Matrix::M41, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1413 stloc:float32(var_23_BA, ldfld:float32(Matrix::M41, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1414 stloc:float32(var_24_C2, ldfld:float32(Matrix::M42, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1415 stloc:float32(var_25_CA, ldfld:float32(Matrix::M42, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1416 stloc:float32(var_26_D2, ldfld:float32(Matrix::M43, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1417 stloc:float32(var_27_DA, ldfld:float32(Matrix::M43, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1418 stloc:float32(var_28_E2, ldfld:float32(Matrix::M44, ldloc:valuetype Microsoft.Xna.Framework.Matrix&(this)))
1419 stloc:float32(var_29_EA, ldfld:float32(Matrix::M44, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](other)))
1420}
1421
1422 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1423 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1424 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1425 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1426 --- End of inner exception stack trace ---
1427 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1428 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1429*/;
1430 }
1431
1432 // Token: 0x060012FE RID: 4862 RVA: 0x0005BB90 File Offset: 0x00059D90
1434 {
1435 float m = matrix1.M11;
1436 float m2 = matrix1.M12;
1437 float m3 = matrix2.M12;
1438 matrix1.M12 = m3;
1439 float m4 = matrix2.M13;
1440 float m5 = matrix1.M13;
1441 float m6 = matrix1.M14;
1442 matrix1.M13 = m4;
1443 float m7 = matrix2.M14;
1444 matrix1.M14 = m7;
1445 float m8 = matrix2.M21;
1446 float m9 = matrix1.M21;
1447 float m10 = matrix1.M22;
1448 matrix1.M21 = m8;
1449 float m11 = matrix2.M22;
1450 matrix1.M22 = m11;
1451 float m12 = matrix2.M23;
1452 float m13 = matrix1.M23;
1453 float m14 = matrix1.M24;
1454 matrix1.M23 = m12;
1455 float m15 = matrix2.M24;
1456 matrix1.M24 = m15;
1457 float m16 = matrix2.M31;
1458 float m17 = matrix1.M31;
1459 float m18 = matrix1.M32;
1460 matrix1.M31 = m16;
1461 float m19 = matrix2.M32;
1462 matrix1.M32 = m19;
1463 float m20 = matrix2.M33;
1464 float m21 = matrix1.M33;
1465 float m22 = matrix1.M34;
1466 matrix1.M33 = m20;
1467 float m23 = matrix2.M34;
1468 matrix1.M34 = m23;
1469 float m24 = matrix2.M41;
1470 float m25 = matrix1.M41;
1471 float m26 = matrix1.M42;
1472 matrix1.M41 = m24;
1473 float m27 = matrix2.M42;
1474 matrix1.M42 = m27;
1475 float m28 = matrix2.M43;
1476 float m29 = matrix1.M43;
1477 float m30 = matrix1.M44;
1478 matrix1.M43 = m28;
1479 float m31 = matrix2.M44;
1480 matrix1.M44 = m31;
1481 float m32 = matrix1.M31;
1482 float m33 = matrix1.M32;
1483 float m34 = matrix1.M11;
1484 float m35 = matrix1.M12;
1486 matrix3.M31 = m32;
1487 matrix3.M32 = m33;
1488 matrix3.M11 = m34;
1489 matrix3.M12 = m35;
1490 return matrix3;
1491 }
1492
1493 // Token: 0x060012FF RID: 4863 RVA: 0x0005BD4C File Offset: 0x00059F4C
1495 {
1496 float m = matrix2.M31;
1497 float m2 = matrix2.M32;
1498 float m3 = matrix2.M11;
1499 float m4 = matrix2.M12;
1500 if (!true)
1501 {
1502 }
1503 float m5 = matrix1.M13;
1504 float m6 = matrix1.M14;
1505 float m7 = matrix1.M21;
1506 float m8 = matrix1.M22;
1507 float m9 = matrix1.M23;
1508 float m10 = matrix1.M24;
1509 float m11 = matrix1.M31;
1510 float m12 = matrix1.M32;
1511 float m13 = matrix1.M33;
1512 float m14 = matrix1.M34;
1513 float m15 = matrix1.M41;
1514 float m16 = matrix1.M42;
1515 float m17 = matrix1.M43;
1516 float m18 = matrix1.M44;
1518 matrix3.M11 = m2;
1519 matrix3.M12 = m;
1520 matrix3.M42 = m3;
1521 return matrix1;
1522 }
1523
1524 // Token: 0x06001300 RID: 4864 RVA: 0x0005BE00 File Offset: 0x0005A000
1526 {
1527 float m = matrix1.M11;
1528 float m2 = matrix1.M12;
1529 float m3 = matrix1.M31;
1530 float m4 = matrix1.M32;
1531 matrix1.M11 = m;
1532 matrix1.M12 = m2;
1533 matrix1.M31 = m3;
1535 float m5 = matrix1.M31;
1536 float m6 = matrix1.M32;
1537 float m7 = matrix1.M11;
1538 float m8 = matrix1.M12;
1540 matrix2.M31 = m5;
1541 matrix2.M32 = m6;
1542 matrix2.M11 = m7;
1543 matrix2.M12 = m8;
1544 return matrix2;
1545 }
1546
1547 // Token: 0x06001301 RID: 4865 RVA: 0x0005BE88 File Offset: 0x0005A088
1549 {
1550 /*
1551An exception occurred when decompiling this method (06001301)
1552
1553ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Microsoft.Xna.Framework.Matrix::op_Equality(Microsoft.Xna.Framework.Matrix,Microsoft.Xna.Framework.Matrix)
1554
1555 ---> System.Exception: Basic block has to end with unconditional control flow.
1556{
1557 Block_0:
1558 stloc:float32(var_0_06, ldfld:float32(Matrix::M12, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1559 stloc:float32(var_1_0D, ldfld:float32(Matrix::M13, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1560 stloc:float32(var_2_14, ldfld:float32(Matrix::M14, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1561 stloc:float32(var_3_1B, ldfld:float32(Matrix::M21, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1562 stloc:float32(var_4_22, ldfld:float32(Matrix::M22, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1563 stloc:float32(var_5_2A, ldfld:float32(Matrix::M23, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1564 stloc:float32(var_6_32, ldfld:float32(Matrix::M24, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1565 stloc:float32(var_7_3A, ldfld:float32(Matrix::M31, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1566 stloc:float32(var_8_42, ldfld:float32(Matrix::M32, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1567 stloc:float32(var_9_4A, ldfld:float32(Matrix::M33, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1568 stloc:float32(var_10_52, ldfld:float32(Matrix::M34, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1569 stloc:float32(var_11_5A, ldfld:float32(Matrix::M41, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1570 stloc:float32(var_12_62, ldfld:float32(Matrix::M42, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1571 stloc:float32(var_13_6A, ldfld:float32(Matrix::M43, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1572 stloc:float32(var_14_72, ldfld:float32(Matrix::M44, ldloc:Matrix[exp:valuetype Microsoft.Xna.Framework.Matrix&](matrix1)))
1573}
1574
1575 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1576 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1577 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1578 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1579 --- End of inner exception stack trace ---
1580 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1581 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1582*/;
1583 }
1584
1585 // Token: 0x06001302 RID: 4866 RVA: 0x0005BF0C File Offset: 0x0005A10C
1587 {
1588 float m = matrix1.M12;
1589 float m2 = matrix1.M13;
1590 float m3 = matrix1.M14;
1591 float m4 = matrix1.M21;
1592 float m5 = matrix1.M22;
1593 float m6 = matrix1.M23;
1594 float m7 = matrix1.M24;
1595 float m8 = matrix1.M31;
1596 float m9 = matrix1.M32;
1597 float m10 = matrix1.M33;
1598 float m11 = matrix1.M34;
1599 float m12 = matrix1.M41;
1600 float m13 = matrix1.M42;
1601 float m14 = matrix1.M43;
1602 float m15 = matrix1.M44;
1603 return true;
1604 }
1605
1606 // Token: 0x06001303 RID: 4867 RVA: 0x0005BF90 File Offset: 0x0005A190
1608 {
1609 float m = matrix1.M21;
1610 float m2 = matrix1.M13;
1611 float m3 = matrix1.M14;
1612 float m4 = matrix2.M31;
1613 float m5 = matrix2.M32;
1614 float m6 = matrix1.M23;
1615 float m7 = matrix1.M24;
1616 float m8 = matrix1.M31;
1617 float m9 = matrix1.M33;
1618 float m10 = matrix1.M34;
1619 float m11 = matrix1.M41;
1620 float m12 = matrix1.M43;
1621 float m13 = matrix1.M44;
1623 matrix3.M31 = m4;
1624 return matrix3;
1625 }
1626
1627 // Token: 0x06001304 RID: 4868 RVA: 0x0005C00C File Offset: 0x0005A20C
1628 public static Matrix operator *(Matrix matrix, float scaleFactor)
1629 {
1630 float m = matrix.M11;
1631 float m2 = matrix.M12;
1632 float m3 = matrix.M31;
1633 float m4 = matrix.M32;
1634 matrix.M11 = m;
1635 matrix.M12 = m2;
1636 matrix.M31 = m3;
1637 matrix.M32 = scaleFactor;
1638 float m5 = matrix.M31;
1639 float m6 = matrix.M32;
1640 float m7 = matrix.M11;
1641 float m8 = matrix.M12;
1643 matrix2.M31 = m5;
1644 matrix2.M32 = m6;
1645 matrix2.M11 = m7;
1646 matrix2.M12 = m8;
1647 return matrix2;
1648 }
1649
1650 // Token: 0x06001305 RID: 4869 RVA: 0x0005C094 File Offset: 0x0005A294
1651 public static Matrix operator *(float scaleFactor, Matrix matrix)
1652 {
1653 float m = matrix.M11;
1654 float m2 = matrix.M12;
1655 float m3 = matrix.M31;
1656 float m4 = matrix.M32;
1657 matrix.M11 = m;
1658 matrix.M12 = m2;
1659 matrix.M31 = m3;
1660 matrix.M32 = scaleFactor;
1661 float m5 = matrix.M31;
1662 float m6 = matrix.M32;
1663 float m7 = matrix.M11;
1664 float m8 = matrix.M12;
1666 matrix2.M31 = m5;
1667 matrix2.M32 = m6;
1668 matrix2.M11 = m7;
1669 matrix2.M12 = m8;
1670 return matrix2;
1671 }
1672
1673 // Token: 0x06001306 RID: 4870 RVA: 0x0005C11C File Offset: 0x0005A31C
1675 {
1676 float m = matrix1.M11;
1677 float m2 = matrix1.M12;
1678 float m3 = matrix2.M12;
1679 matrix1.M12 = m3;
1680 float m4 = matrix2.M13;
1681 float m5 = matrix1.M13;
1682 float m6 = matrix1.M14;
1683 matrix1.M13 = m4;
1684 float m7 = matrix2.M14;
1685 matrix1.M14 = m7;
1686 float m8 = matrix2.M21;
1687 float m9 = matrix1.M21;
1688 float m10 = matrix1.M22;
1689 matrix1.M21 = m8;
1690 float m11 = matrix2.M22;
1691 matrix1.M22 = m11;
1692 float m12 = matrix2.M23;
1693 float m13 = matrix1.M23;
1694 float m14 = matrix1.M24;
1695 matrix1.M23 = m12;
1696 float m15 = matrix2.M24;
1697 matrix1.M24 = m15;
1698 float m16 = matrix2.M31;
1699 float m17 = matrix1.M31;
1700 float m18 = matrix1.M32;
1701 matrix1.M31 = m16;
1702 float m19 = matrix2.M32;
1703 matrix1.M32 = m19;
1704 float m20 = matrix2.M33;
1705 float m21 = matrix1.M33;
1706 float m22 = matrix1.M34;
1707 matrix1.M33 = m20;
1708 float m23 = matrix2.M34;
1709 matrix1.M34 = m23;
1710 float m24 = matrix2.M41;
1711 float m25 = matrix1.M41;
1712 float m26 = matrix1.M42;
1713 matrix1.M41 = m24;
1714 float m27 = matrix2.M42;
1715 matrix1.M42 = m27;
1716 float m28 = matrix2.M43;
1717 float m29 = matrix1.M43;
1718 float m30 = matrix1.M44;
1719 matrix1.M43 = m28;
1720 float m31 = matrix2.M44;
1721 matrix1.M44 = m31;
1722 float m32 = matrix1.M31;
1723 float m33 = matrix1.M32;
1724 float m34 = matrix1.M11;
1725 float m35 = matrix1.M12;
1727 matrix3.M31 = m32;
1728 matrix3.M32 = m33;
1729 matrix3.M11 = m34;
1730 matrix3.M12 = m35;
1731 return matrix3;
1732 }
1733
1734 // Token: 0x06001307 RID: 4871 RVA: 0x0005C2D8 File Offset: 0x0005A4D8
1736 {
1737 float m = matrix.M11;
1738 float m2 = matrix.M12;
1739 float m3 = matrix.M31;
1740 float m4 = matrix.M32;
1741 matrix.M11 = m;
1742 matrix.M12 = m2;
1743 matrix.M31 = m3;
1744 matrix.M32 = m4;
1745 float m5 = matrix.M31;
1746 float m6 = matrix.M32;
1747 float m7 = matrix.M11;
1748 float m8 = matrix.M12;
1750 matrix2.M31 = m5;
1751 matrix2.M32 = m6;
1752 matrix2.M11 = m7;
1753 matrix2.M12 = m8;
1754 return matrix2;
1755 }
1756
1757 // Token: 0x06001308 RID: 4872 RVA: 0x0005C360 File Offset: 0x0005A560
1758 public override bool Equals(object obj)
1759 {
1760 if (obj != null)
1761 {
1762 }
1763 float m = this.M31;
1764 float m2 = this.M32;
1765 float m3 = this.M11;
1766 float m4 = this.M12;
1767 bool flag;
1768 return flag;
1769 }
1770
1771 // Token: 0x06001309 RID: 4873 RVA: 0x000021DB File Offset: 0x000003DB
1772 public override int GetHashCode()
1773 {
1774 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
1775 }
1776
1777 // Token: 0x0600130A RID: 4874 RVA: 0x0005C398 File Offset: 0x0005A598
1778 public override string ToString()
1779 {
1780 string text;
1781 string text2;
1782 string text3;
1783 string text4;
1784 string text5;
1785 string text6;
1786 string text7;
1787 string text8;
1788 string text9;
1789 string text10;
1790 string text11;
1791 string text12;
1792 string text13;
1793 string text14;
1794 string text15;
1795 string text16;
1796 if (("{ {M11:" == null || "{ {M11:" != null) && (text == null || text != null) && (" M12:" == null || " M12:" != null) && (text2 == null || text2 != null) && (" M13:" == null || " M13:" != null) && (text3 == null || text3 != null) && (" M14:" == null || " M14:" != null) && (text4 == null || text4 != null) && ("} {M21:" == null || "} {M21:" != null) && (text5 == null || text5 != null) && (" M22:" == null || " M22:" != null) && (text6 == null || text6 != null) && (" M23:" == null || " M23:" != null) && (text7 == null || text7 != null) && (" M24:" == null || " M24:" != null) && (text8 == null || text8 != null) && ("} {M31:" == null || "} {M31:" != null) && (text9 == null || text9 != null) && (" M32:" == null || " M32:" != null) && (text10 == null || text10 != null) && (" M33:" == null || " M33:" != null) && (text11 == null || text11 != null) && (" M34:" == null || " M34:" != null) && (text12 == null || text12 != null) && ("} {M41:" == null || "} {M41:" != null) && (text13 == null || text13 != null) && (" M42:" == null || " M42:" != null) && (text14 == null || text14 != null) && (" M43:" == null || " M43:" != null) && (text15 == null || text15 != null) && (" M44:" == null || " M44:" != null) && (text16 == null || text16 != null) && ("} }" == null || "} }" != null))
1797 {
1798 string text17;
1799 return text17;
1800 }
1801 throw new ArrayTypeMismatchException();
1802 }
1803
1804 // Token: 0x0600130B RID: 4875 RVA: 0x0005C564 File Offset: 0x0005A764
1805 // Note: this type is marked as 'beforefieldinit'.
1806 static Matrix()
1807 {
1808 }
1809
1810 // Token: 0x04002252 RID: 8786
1811 public float M11;
1812
1813 // Token: 0x04002253 RID: 8787
1814 public float M12;
1815
1816 // Token: 0x04002254 RID: 8788
1817 public float M13;
1818
1819 // Token: 0x04002255 RID: 8789
1820 public float M14;
1821
1822 // Token: 0x04002256 RID: 8790
1823 public float M21;
1824
1825 // Token: 0x04002257 RID: 8791
1826 public float M22;
1827
1828 // Token: 0x04002258 RID: 8792
1829 public float M23;
1830
1831 // Token: 0x04002259 RID: 8793
1832 public float M24;
1833
1834 // Token: 0x0400225A RID: 8794
1835 public float M31;
1836
1837 // Token: 0x0400225B RID: 8795
1838 public float M32;
1839
1840 // Token: 0x0400225C RID: 8796
1841 public float M33;
1842
1843 // Token: 0x0400225D RID: 8797
1844 public float M34;
1845
1846 // Token: 0x0400225E RID: 8798
1847 public float M41;
1848
1849 // Token: 0x0400225F RID: 8799
1850 public float M42;
1851
1852 // Token: 0x04002260 RID: 8800
1853 public float M43;
1854
1855 // Token: 0x04002261 RID: 8801
1856 public float M44;
1857
1858 // Token: 0x04002262 RID: 8802
1859 private static Matrix identity;
1860 }
1861}
class f__AnonymousType0<< Count > j__TPar
static void CreateTranslation(Vector3 position, [Out] Matrix result)
Definition Matrix.cs:843
static void Add(Matrix matrix1, Matrix matrix2, [Out] Matrix result)
Definition Matrix.cs:390
static Matrix CreateShadow(Vector3 lightDirection, Plane plane)
Definition Matrix.cs:180
Matrix(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 Matrix.cs:151
static Matrix operator-(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:1674
static Matrix CreatePerspectiveOffCenter(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane)
Definition Matrix.cs:610
static Matrix operator+(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:1433
static Matrix CreateOrthographic(float width, float height, float zNearPlane, float zFarPlane)
Definition Matrix.cs:538
static void CreateConstrainedBillboard(Vector3 objectPosition, Vector3 cameraPosition, Vector3 rotateAxis, Vector3? cameraForwardVector, Vector3? objectForwardVector, [Out] Matrix result)
Definition Matrix.cs:442
static Matrix Multiply(Matrix matrix1, float factor)
Definition Matrix.cs:1131
static Matrix Transform(Matrix value, Quaternion rotation)
Definition Matrix.cs:272
static void Multiply(Matrix matrix1, float factor, [Out] Matrix result)
Definition Matrix.cs:1154
static void CreateLookAt(Vector3 cameraPosition, Vector3 cameraTarget, Vector3 cameraUpVector, [Out] Matrix result)
Definition Matrix.cs:496
static void CreatePerspectiveFieldOfView(float fieldOfView, float aspectRatio, float nearPlaneDistance, float farPlaneDistance, [Out] Matrix result)
Definition Matrix.cs:600
static Matrix CreatePerspectiveFieldOfView(float fieldOfView, float aspectRatio, float nearPlaneDistance, float farPlaneDistance)
Definition Matrix.cs:586
static Matrix CreateOrthographicOffCenter(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane)
Definition Matrix.cs:555
static void CreateScale(float xScale, float yScale, float zScale, [Out] Matrix result)
Definition Matrix.cs:758
static void CreateFromYawPitchRoll(float yaw, float pitch, float roll, [Out] Matrix result)
Definition Matrix.cs:249
static void CreateOrthographicOffCenter(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane, [Out] Matrix result)
Definition Matrix.cs:567
static void CreatePerspective(float width, float height, float zNearPlane, float zFarPlane, [Out] Matrix result)
Definition Matrix.cs:580
static void Negate(Matrix matrix, [Out] Matrix result)
Definition Matrix.cs:1188
static Matrix CreateFromYawPitchRoll(float yaw, float pitch, float roll)
Definition Matrix.cs:233
static Matrix CreateConstrainedBillboard(Vector3 objectPosition, Vector3 cameraPosition, Vector3 rotateAxis, Vector3? cameraForwardVector, Vector3? objectForwardVector)
Definition Matrix.cs:436
static void Divide(Matrix matrix1, Matrix matrix2, [Out] Matrix result)
Definition Matrix.cs:887
static Matrix CreateFromAxisAngle(Vector3 axis, float angle)
Definition Matrix.cs:448
static void CreateScale(Vector3 scales, [Out] Matrix result)
Definition Matrix.cs:786
static Matrix Add(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:329
bool Decompose([Out] Vector3 scale, [Out] Quaternion rotation, [Out] Vector3 translation)
Definition Matrix.cs:281
static bool operator!=(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:1586
static Matrix Divide(Matrix matrix1, float divider)
Definition Matrix.cs:937
static Matrix CreateLookAt(Vector3 cameraPosition, Vector3 cameraTarget, Vector3 cameraUpVector)
Definition Matrix.cs:487
static Matrix CreateBillboard(Vector3 objectPosition, Vector3 cameraPosition, Vector3 cameraUpVector, Vector3? cameraForwardVector)
Definition Matrix.cs:404
static void Multiply(Matrix matrix1, Matrix matrix2, [Out] Matrix result)
Definition Matrix.cs:1058
static Matrix operator*(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:1607
static Matrix Invert(Matrix matrix)
Definition Matrix.cs:971
static Matrix Multiply(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:1037
static Matrix CreateTranslation(Vector3 position)
Definition Matrix.cs:831
static Matrix operator/(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:1494
override string ToString()
Definition Matrix.cs:1778
static Matrix CreateFromQuaternion(Quaternion quaternion)
Definition Matrix.cs:460
static Matrix Divide(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:856
static Matrix CreateScale(Vector3 scales)
Definition Matrix.cs:772
static Matrix CreateScale(float scale)
Definition Matrix.cs:718
static void Subtract(Matrix matrix1, Matrix matrix2, [Out] Matrix result)
Definition Matrix.cs:1260
static void CreateWorld(Vector3 position, Vector3 forward, Vector3 up, [Out] Matrix result)
Definition Matrix.cs:165
override bool Equals(object obj)
Definition Matrix.cs:1758
static void CreateBillboard(Vector3 objectPosition, Vector3 cameraPosition, Vector3 cameraUpVector, Vector3? cameraForwardVector, [Out] Matrix result)
Definition Matrix.cs:413
static void CreateRotationX(float radians, [Out] Matrix result)
Definition Matrix.cs:639
static void CreateReflection(Plane value, [Out] Matrix result)
Definition Matrix.cs:210
static Matrix CreateRotationX(float radians)
Definition Matrix.cs:622
static Matrix Subtract(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:1199
static Matrix CreateTranslation(float xPosition, float yPosition, float zPosition)
Definition Matrix.cs:801
static void CreateTranslation(float xPosition, float yPosition, float zPosition, [Out] Matrix result)
Definition Matrix.cs:817
static Matrix CreateScale(float xScale, float yScale, float zScale)
Definition Matrix.cs:744
bool Equals(Matrix other)
Definition Matrix.cs:1380
static Matrix CreateReflection(Plane value)
Definition Matrix.cs:224
static Matrix Lerp(Matrix matrix1, Matrix matrix2, float amount)
Definition Matrix.cs:1025
static void CreateRotationY(float radians, [Out] Matrix result)
Definition Matrix.cs:671
static bool operator==(Matrix matrix1, Matrix matrix2)
Definition Matrix.cs:1548
static void Divide(Matrix matrix1, float divider, [Out] Matrix result)
Definition Matrix.cs:960
static Matrix CreatePerspective(float width, float height, float zNearPlane, float zFarPlane)
Definition Matrix.cs:574
static void CreateShadow(Vector3 lightDirection, Plane plane, [Out] Matrix result)
Definition Matrix.cs:189
static void CreatePerspectiveOffCenter(float left, float right, float bottom, float top, float nearPlaneDistance, float farPlaneDistance, [Out] Matrix result)
Definition Matrix.cs:616
static Matrix CreateWorld(Vector3 position, Vector3 forward, Vector3 up)
Definition Matrix.cs:156
static void Transpose(Matrix matrix, [Out] Matrix result)
Definition Matrix.cs:1311
static void Lerp(Matrix matrix1, Matrix matrix2, float amount, [Out] Matrix result)
Definition Matrix.cs:1031
static void CreateFromQuaternion(Quaternion quaternion, [Out] Matrix result)
Definition Matrix.cs:469
static Matrix CreateRotationY(float radians)
Definition Matrix.cs:654
static void CreateRotationZ(float radians, [Out] Matrix result)
Definition Matrix.cs:703
static Matrix Negate(Matrix matrix)
Definition Matrix.cs:1165
static void CreateOrthographic(float width, float height, float zNearPlane, float zFarPlane, [Out] Matrix result)
Definition Matrix.cs:549
static void CreateFromAxisAngle(Vector3 axis, float angle, [Out] Matrix result)
Definition Matrix.cs:454
static void Invert(Matrix matrix, [Out] Matrix result)
Definition Matrix.cs:990
static void Transform(Matrix value, Quaternion rotation, [Out] Matrix result)
Definition Matrix.cs:260
static void CreateScale(float scale, [Out] Matrix result)
Definition Matrix.cs:732
static Matrix CreateRotationZ(float radians)
Definition Matrix.cs:686
static Matrix Transpose(Matrix matrix)
Definition Matrix.cs:1274