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
Matrix4x4.cs
Go to the documentation of this file.
1using System;
9
10namespace UnityEngine
11{
12 // Token: 0x020000CB RID: 203
13 [DefaultMember("Item")]
14 [NativeClass("Matrix4x4f")]
15 [NativeType(Header = "Runtime/Math/Matrix4x4.h")]
16 [NativeHeader("Runtime/Math/MathScripting.h")]
17 [RequiredByNativeCode(Optional = true, GenerateProxy = true)]
19 public struct Matrix4x4 : IEquatable<Matrix4x4>, IFormattable
20 {
21 // Token: 0x060003AE RID: 942 RVA: 0x000074A4 File Offset: 0x000056A4
25
26 // Token: 0x060003AF RID: 943 RVA: 0x000074B4 File Offset: 0x000056B4
27 public override int GetHashCode()
28 {
29 float num = this.m01;
30 float num2 = this.m02;
31 float num3 = this.m03;
32 int num4;
33 return num4;
34 }
35
36 // Token: 0x060003B0 RID: 944 RVA: 0x000074DC File Offset: 0x000056DC
37 public override bool Equals(object other)
38 {
39 if (other != null)
40 {
41 return;
42 }
43 }
44
45 // Token: 0x060003B1 RID: 945 RVA: 0x000074F0 File Offset: 0x000056F0
46 public bool Equals(Matrix4x4 other)
47 {
48 /*
49An exception occurred when decompiling this method (060003B1)
50
51ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean UnityEngine.Matrix4x4::Equals(UnityEngine.Matrix4x4)
52
53 ---> System.Exception: Basic block has to end with unconditional control flow.
54{
55 Block_0:
56 stloc:float32(var_0_06, ldfld:float32(Matrix4x4::m30, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
57 stloc:float32(var_1_0D, ldfld:float32(Matrix4x4::m30, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
58 stloc:float32(var_2_14, ldfld:float32(Matrix4x4::m20, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
59 stloc:float32(var_3_1B, ldfld:float32(Matrix4x4::m20, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
60 stloc:float32(var_4_22, ldfld:float32(Matrix4x4::m10, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
61 stloc:float32(var_5_2A, ldfld:float32(Matrix4x4::m10, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
62 stloc:float32(var_6_32, ldfld:float32(Matrix4x4::m31, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
63 stloc:float32(var_7_3A, ldfld:float32(Matrix4x4::m31, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
64 stloc:float32(var_8_42, ldfld:float32(Matrix4x4::m21, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
65 stloc:float32(var_9_4A, ldfld:float32(Matrix4x4::m21, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
66 stloc:float32(var_10_52, ldfld:float32(Matrix4x4::m11, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
67 stloc:float32(var_11_5A, ldfld:float32(Matrix4x4::m11, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
68 stloc:float32(var_12_62, ldfld:float32(Matrix4x4::m01, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
69 stloc:float32(var_13_6A, ldfld:float32(Matrix4x4::m01, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
70 stloc:float32(var_14_72, ldfld:float32(Matrix4x4::m32, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
71 stloc:float32(var_15_7A, ldfld:float32(Matrix4x4::m32, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
72 stloc:float32(var_16_82, ldfld:float32(Matrix4x4::m22, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
73 stloc:float32(var_17_8A, ldfld:float32(Matrix4x4::m22, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
74 stloc:float32(var_18_92, ldfld:float32(Matrix4x4::m12, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
75 stloc:float32(var_19_9A, ldfld:float32(Matrix4x4::m12, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
76 stloc:float32(var_20_A2, ldfld:float32(Matrix4x4::m02, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
77 stloc:float32(var_21_AA, ldfld:float32(Matrix4x4::m02, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
78 stloc:float32(var_22_B2, ldfld:float32(Matrix4x4::m03, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
79 stloc:float32(var_23_BA, ldfld:float32(Matrix4x4::m13, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
80 stloc:float32(var_24_C2, ldfld:float32(Matrix4x4::m03, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
81 stloc:float32(var_25_CA, ldfld:float32(Matrix4x4::m13, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
82 stloc:float32(var_26_D2, ldfld:float32(Matrix4x4::m23, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
83 stloc:float32(var_27_DA, ldfld:float32(Matrix4x4::m33, ldloc:valuetype UnityEngine.Matrix4x4&(this)))
84 stloc:float32(var_28_E2, ldfld:float32(Matrix4x4::m23, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
85 stloc:float32(var_29_EA, ldfld:float32(Matrix4x4::m33, ldloc:Matrix4x4[exp:valuetype UnityEngine.Matrix4x4&](other)))
86}
87
88 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
89 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
90 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
91 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
92 --- End of inner exception stack trace ---
93 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
94 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
95*/;
96 }
97
98 // Token: 0x060003B2 RID: 946 RVA: 0x000021B3 File Offset: 0x000003B3
100 {
101 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
102 }
103
104 // Token: 0x060003B3 RID: 947 RVA: 0x000075EC File Offset: 0x000057EC
106 {
107 float num = this.m20;
108 float num2 = this.m30;
109 float num3 = this.m01;
110 float num4 = this.m21;
111 float num5 = this.m31;
112 float num6 = this.m02;
113 float num7 = this.m22;
114 float num8 = this.m32;
115 float num9 = this.m23;
116 float num10 = this.m33;
117 float num11 = this.m03;
118 Vector3 vector;
119 return vector;
120 }
121
122 // Token: 0x060003B4 RID: 948 RVA: 0x00007650 File Offset: 0x00005850
124 {
125 float num = this.m20;
126 float num2 = this.m01;
127 float num3 = this.m21;
128 float num4 = this.m02;
129 float num5 = this.m22;
130 float num6 = this.m03;
131 float num7 = this.m23;
132 Vector3 vector;
133 return vector;
134 }
135
136 // Token: 0x060003B5 RID: 949 RVA: 0x00007694 File Offset: 0x00005894
137 public override string ToString()
138 {
139 string text;
140 return text;
141 }
142
143 // Token: 0x060003B6 RID: 950 RVA: 0x000076A4 File Offset: 0x000058A4
145 {
146 bool flag = string.IsNullOrEmpty(format);
147 if (formatProvider == null)
148 {
150 }
151 string text;
152 string text2;
153 string text3;
154 string text4;
155 string text5;
156 string text6;
157 string text7;
158 string text8;
159 string text9;
160 string text10;
161 string text11;
162 string text12;
163 string text13;
164 string text14;
165 string text15;
166 string text16;
167 if ((text == null || text != null) && (text2 == null || text2 != null) && (text3 == null || text3 != null) && (text4 == null || text4 != null) && (text5 == null || text5 != null) && (text6 == null || text6 != null) && (text7 == null || text7 != null) && (text8 == null || text8 != null) && (text9 == null || text9 != null) && (text10 == null || text10 != null) && (text11 == null || text11 != null) && (text12 == null || text12 != null) && (text13 == null || text13 != null) && (text14 == null || text14 != null) && (text15 == null || text15 != null) && (text16 == null || text16 != null))
168 {
169 string text17;
170 return text17;
171 }
172 throw new ArrayTypeMismatchException();
173 }
174
175 // Token: 0x060003B7 RID: 951 RVA: 0x00007764 File Offset: 0x00005964
176 [FreeFunction("MatrixScripting::Ortho", IsThreadSafe = true)]
177 public static Matrix4x4 Ortho(float left, float right, float bottom, float top, float zNear, float zFar)
178 {
179 throw new MissingMethodException();
180 }
181
182 // Token: 0x060003B8 RID: 952 RVA: 0x00007794 File Offset: 0x00005994
183 // Note: this type is marked as 'beforefieldinit'.
184 static Matrix4x4()
185 {
186 }
187
188 // Token: 0x060003B9 RID: 953 RVA: 0x000077A4 File Offset: 0x000059A4
189 private static void Ortho_Injected(float left, float right, float bottom, float top, float zNear, float zFar, [Out] Matrix4x4 ret)
190 {
191 throw new MissingMethodException();
192 }
193
194 // Token: 0x04000391 RID: 913
195 [NativeName("m_Data[0]")]
196 public float m00;
197
198 // Token: 0x04000392 RID: 914
199 [NativeName("m_Data[1]")]
200 public float m10;
201
202 // Token: 0x04000393 RID: 915
203 [NativeName("m_Data[2]")]
204 public float m20;
205
206 // Token: 0x04000394 RID: 916
207 [NativeName("m_Data[3]")]
208 public float m30;
209
210 // Token: 0x04000395 RID: 917
211 [NativeName("m_Data[4]")]
212 public float m01;
213
214 // Token: 0x04000396 RID: 918
215 [NativeName("m_Data[5]")]
216 public float m11;
217
218 // Token: 0x04000397 RID: 919
219 [NativeName("m_Data[6]")]
220 public float m21;
221
222 // Token: 0x04000398 RID: 920
223 [NativeName("m_Data[7]")]
224 public float m31;
225
226 // Token: 0x04000399 RID: 921
227 [NativeName("m_Data[8]")]
228 public float m02;
229
230 // Token: 0x0400039A RID: 922
231 [NativeName("m_Data[9]")]
232 public float m12;
233
234 // Token: 0x0400039B RID: 923
235 [NativeName("m_Data[10]")]
236 public float m22;
237
238 // Token: 0x0400039C RID: 924
239 [NativeName("m_Data[11]")]
240 public float m32;
241
242 // Token: 0x0400039D RID: 925
243 [NativeName("m_Data[12]")]
244 public float m03;
245
246 // Token: 0x0400039E RID: 926
247 [NativeName("m_Data[13]")]
248 public float m13;
249
250 // Token: 0x0400039F RID: 927
251 [NativeName("m_Data[14]")]
252 public float m23;
253
254 // Token: 0x040003A0 RID: 928
255 [NativeName("m_Data[15]")]
256 public float m33;
257
258 // Token: 0x040003A1 RID: 929
260
261 // Token: 0x040003A2 RID: 930
263 }
264}
class f__AnonymousType0<< Count > j__TPar
static CultureInfo InvariantCulture
override int GetHashCode()
Definition Matrix4x4.cs:27
static void Ortho_Injected(float left, float right, float bottom, float top, float zNear, float zFar, [Out] Matrix4x4 ret)
Definition Matrix4x4.cs:189
static readonly Matrix4x4 identityMatrix
Definition Matrix4x4.cs:262
override bool Equals(object other)
Definition Matrix4x4.cs:37
static Matrix4x4 Ortho(float left, float right, float bottom, float top, float zNear, float zFar)
Definition Matrix4x4.cs:177
override string ToString()
Definition Matrix4x4.cs:137
Vector4 GetColumn(int index)
Definition Matrix4x4.cs:99
Matrix4x4(Vector4 column0, Vector4 column1, Vector4 column2, Vector4 column3)
Definition Matrix4x4.cs:22
string ToString(string format, IFormatProvider formatProvider)
Definition Matrix4x4.cs:144
bool Equals(Matrix4x4 other)
Definition Matrix4x4.cs:46
Vector3 MultiplyPoint(Vector3 point)
Definition Matrix4x4.cs:105
static readonly Matrix4x4 zeroMatrix
Definition Matrix4x4.cs:259
Vector3 MultiplyPoint3x4(Vector3 point)
Definition Matrix4x4.cs:123