236 lines
14 KiB
C#
236 lines
14 KiB
C#
using System;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
|
|
{
|
|
// Token: 0x0200061D RID: 1565
|
|
[Token(Token = "0x200061D")]
|
|
internal struct Triangle : IEquatable<Triangle>
|
|
{
|
|
// Token: 0x170003B7 RID: 951
|
|
[Token(Token = "0x170003B7")]
|
|
public int this[int index]
|
|
{
|
|
[Token(Token = "0x6003136")]
|
|
[Address(RVA = "0x7A6020", Offset = "0x7A4820", VA = "0x1807A6020")]
|
|
get
|
|
{
|
|
if (index == 0)
|
|
{
|
|
return this.v0;
|
|
}
|
|
if (index == 1)
|
|
{
|
|
return this.v1;
|
|
}
|
|
return this.v2;
|
|
}
|
|
[Token(Token = "0x6003137")]
|
|
[Address(RVA = "0x4152B0", Offset = "0x413AB0", VA = "0x1804152B0")]
|
|
set
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06003137)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void MTAssets.UltimateLODSystem.MeshSimplifier.Internal.Triangle::set_Item(System.Int32,System.Int32)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{; IL_24:; stloc:ArgumentOutOfRangeException(var_0_2E, newobj:ArgumentOutOfRangeException(ArgumentOutOfRangeException::.ctor, ldstr:string("index"))); };
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1810
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1804
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1804
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1804
|
|
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 344
|
|
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
|
|
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
|
|
--- End of inner exception stack trace ---
|
|
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
|
|
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 1618
|
|
*/;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06003138 RID: 12600 RVA: 0x00066E1C File Offset: 0x0006501C
|
|
[Token(Token = "0x6003138")]
|
|
[Address(RVA = "0x7A5FD0", Offset = "0x7A47D0", VA = "0x1807A5FD0")]
|
|
public Triangle(int index, int v0, int v1, int v2, int subMeshIndex)
|
|
{
|
|
int num = 0;
|
|
this.subMeshIndex = 0;
|
|
int num2 = 0;
|
|
this.index = index;
|
|
this.err3 = (double)num2;
|
|
this.err2 = (double)num2;
|
|
this.err1 = (double)num2;
|
|
this.err0 = (double)num2;
|
|
this.deleted = num2 != 0;
|
|
this.v0 = v0;
|
|
this.v1 = v1;
|
|
this.v2 = 0;
|
|
this.va0 = v0;
|
|
this.va1 = v1;
|
|
this.va2 = 0;
|
|
this.n = num;
|
|
this.n.z = (double)num2;
|
|
}
|
|
|
|
// Token: 0x06003139 RID: 12601 RVA: 0x00066E9C File Offset: 0x0006509C
|
|
[Token(Token = "0x6003139")]
|
|
[Address(RVA = "0x415140", Offset = "0x413940", VA = "0x180415140")]
|
|
public void GetAttributeIndices(int[] attributeIndices)
|
|
{
|
|
int num = this.va0;
|
|
int length = attributeIndices.Length;
|
|
attributeIndices[0] = num;
|
|
int num2 = this.va1;
|
|
attributeIndices[0] = num2;
|
|
int num3 = this.va2;
|
|
attributeIndices[1] = num3;
|
|
}
|
|
|
|
// Token: 0x0600313A RID: 12602 RVA: 0x00066EE4 File Offset: 0x000650E4
|
|
[Token(Token = "0x600313A")]
|
|
[Address(RVA = "0x415230", Offset = "0x413A30", VA = "0x180415230")]
|
|
public void SetAttributeIndex(int index, int value)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600313A)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void MTAssets.UltimateLODSystem.MeshSimplifier.Internal.Triangle::SetAttributeIndex(System.Int32,System.Int32)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{; IL_24:; stloc:ArgumentOutOfRangeException(var_0_2E, newobj:ArgumentOutOfRangeException(ArgumentOutOfRangeException::.ctor, ldstr:string("index"))); };
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1810
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1804
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1804
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1836
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1804
|
|
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 344
|
|
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
|
|
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
|
|
--- End of inner exception stack trace ---
|
|
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
|
|
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 1618
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x0600313B RID: 12603 RVA: 0x00066F20 File Offset: 0x00065120
|
|
[Token(Token = "0x600313B")]
|
|
[Address(RVA = "0x4151B0", Offset = "0x4139B0", VA = "0x1804151B0")]
|
|
public void GetErrors(double[] err)
|
|
{
|
|
int length = err.Length;
|
|
}
|
|
|
|
// Token: 0x0600313C RID: 12604 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x600313C")]
|
|
[Address(RVA = "0x365F30", Offset = "0x364730", VA = "0x180365F30", Slot = "2")]
|
|
public override int GetHashCode()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x0600313D RID: 12605 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x600313D")]
|
|
[Address(RVA = "0x7A5F30", Offset = "0x7A4730", VA = "0x1807A5F30", Slot = "0")]
|
|
public override bool Equals(object obj)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x0600313E RID: 12606 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x600313E")]
|
|
[Address(RVA = "0x7A5FC0", Offset = "0x7A47C0", VA = "0x1807A5FC0", Slot = "4")]
|
|
public bool Equals(Triangle other)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x04003B13 RID: 15123
|
|
[FieldOffset(Offset = "0x0")]
|
|
[Token(Token = "0x4003B13")]
|
|
public int index;
|
|
|
|
// Token: 0x04003B14 RID: 15124
|
|
[FieldOffset(Offset = "0x4")]
|
|
[Token(Token = "0x4003B14")]
|
|
public int v0;
|
|
|
|
// Token: 0x04003B15 RID: 15125
|
|
[FieldOffset(Offset = "0x8")]
|
|
[Token(Token = "0x4003B15")]
|
|
public int v1;
|
|
|
|
// Token: 0x04003B16 RID: 15126
|
|
[FieldOffset(Offset = "0xC")]
|
|
[Token(Token = "0x4003B16")]
|
|
public int v2;
|
|
|
|
// Token: 0x04003B17 RID: 15127
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4003B17")]
|
|
public int subMeshIndex;
|
|
|
|
// Token: 0x04003B18 RID: 15128
|
|
[FieldOffset(Offset = "0x14")]
|
|
[Token(Token = "0x4003B18")]
|
|
public int va0;
|
|
|
|
// Token: 0x04003B19 RID: 15129
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4003B19")]
|
|
public int va1;
|
|
|
|
// Token: 0x04003B1A RID: 15130
|
|
[FieldOffset(Offset = "0x1C")]
|
|
[Token(Token = "0x4003B1A")]
|
|
public int va2;
|
|
|
|
// Token: 0x04003B1B RID: 15131
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4003B1B")]
|
|
public double err0;
|
|
|
|
// Token: 0x04003B1C RID: 15132
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4003B1C")]
|
|
public double err1;
|
|
|
|
// Token: 0x04003B1D RID: 15133
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4003B1D")]
|
|
public double err2;
|
|
|
|
// Token: 0x04003B1E RID: 15134
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4003B1E")]
|
|
public double err3;
|
|
|
|
// Token: 0x04003B1F RID: 15135
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4003B1F")]
|
|
public bool deleted;
|
|
|
|
// Token: 0x04003B20 RID: 15136
|
|
[FieldOffset(Offset = "0x41")]
|
|
[Token(Token = "0x4003B20")]
|
|
public bool dirty;
|
|
|
|
// Token: 0x04003B21 RID: 15137
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4003B21")]
|
|
public Vector3d n;
|
|
}
|
|
}
|