Add v1.0.3.1

This commit is contained in:
2023-09-06 22:00:49 +02:00
commit 3aebbbf8f0
2051 changed files with 757425 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
using System;
using System.Xml;
using Cpp2IlInjected;
using UnityEngine;
using UnityEngine.UI;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005EC RID: 1516
[Token(Token = "0x20005EC")]
public class ChangeLodAutoManagement : MonoBehaviour
{
// Token: 0x06002FC4 RID: 12228 RVA: 0x00065908 File Offset: 0x00063B08
[Token(Token = "0x6002FC4")]
[Address(RVA = "0xE81D90", Offset = "0xE80B90", VA = "0x180E81D90")]
private void Update()
{
this.buttonText.text = "Disable Global Ultimate LOD System";
this.explanation.text = "ULOD System is Enabled. Consult the documentation for more details on the feature of enabling/disabling the ULOD system while the game is running.";
this.buttonText.text = "Enable Global Ultimate LOD System";
bool dtdValidation = ((IDtdParserAdapterWithValidation)this.explanation).DtdValidation;
}
// Token: 0x06002FC5 RID: 12229 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FC5")]
[Address(RVA = "0xE81F70", Offset = "0xE80D70", VA = "0x180E81F70")]
public void buttonEnableAutoManagement()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FC6 RID: 12230 RVA: 0x00065958 File Offset: 0x00063B58
[Token(Token = "0x6002FC6")]
[Address(RVA = "0x3088F0", Offset = "0x3076F0", VA = "0x1803088F0")]
public ChangeLodAutoManagement()
{
}
// Token: 0x04003A09 RID: 14857
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A09")]
public Text buttonText;
// Token: 0x04003A0A RID: 14858
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A0A")]
public Text explanation;
}
}

View File

@@ -0,0 +1,36 @@
using System;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005F1 RID: 1521
[Token(Token = "0x20005F1")]
[AddComponentMenu("")]
public class CurrentRenderPipeline : MonoBehaviour
{
// Token: 0x06002FD2 RID: 12242 RVA: 0x00065B98 File Offset: 0x00063D98
[Token(Token = "0x6002FD2")]
[Address(RVA = "0x3088F0", Offset = "0x3076F0", VA = "0x1803088F0")]
public CurrentRenderPipeline()
{
}
// Token: 0x06002FD3 RID: 12243 RVA: 0x000020D3 File Offset: 0x000002D3
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6002FD3")]
[Address(RVA = "0x13C2060", Offset = "0x13C0E60", VA = "0x1813C2060")]
static CurrentRenderPipeline()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003A10 RID: 14864
[Token(Token = "0x4003A10")]
public static bool haveAnotherSrpPackages;
// Token: 0x04003A11 RID: 14865
[Token(Token = "0x4003A11")]
public static string packageDetected;
}
}

View File

@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005F0 RID: 1520
[Token(Token = "0x20005F0")]
public static class ListMethodsExtensions
{
// Token: 0x06002FD1 RID: 12241 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FD1")]
[Address(RVA = "0x4E7800", Offset = "0x4E6600", VA = "0x1804E7800")]
public static void RemoveAllNullItems<T>(this List<T> list)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
}

View File

@@ -0,0 +1,19 @@
using System;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005EE RID: 1518
[Token(Token = "0x20005EE")]
[AddComponentMenu("")]
public class MTAssetsEditorUi : MonoBehaviour
{
// Token: 0x06002FCD RID: 12237 RVA: 0x00065B30 File Offset: 0x00063D30
[Token(Token = "0x6002FCD")]
[Address(RVA = "0x3088F0", Offset = "0x3076F0", VA = "0x1803088F0")]
public MTAssetsEditorUi()
{
}
}
}

View File

@@ -0,0 +1,42 @@
using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005EF RID: 1519
[Token(Token = "0x20005EF")]
[AddComponentMenu("")]
public class MTAssetsMathematics : MonoBehaviour
{
// Token: 0x06002FCE RID: 12238 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FCE")]
[Address(RVA = "0x4E8290", Offset = "0x4E7090", VA = "0x1804E8290")]
public static List<T> RandomizeThisList<T>(List<T> list)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FCF RID: 12239 RVA: 0x00065B44 File Offset: 0x00063D44
[Token(Token = "0x6002FCF")]
[Address(RVA = "0x400D30", Offset = "0x3FFB30", VA = "0x180400D30")]
public static Vector3 GetHalfPositionBetweenTwoPoints(Vector3 pointA, Vector3 pointB)
{
float z = pointB.z;
float num = Mathf.Clamp01(0.5f);
float z2 = pointB.z;
float z3 = pointB.z;
float z4 = pointB.z;
pointA.z = z3;
return pointA;
}
// Token: 0x06002FD0 RID: 12240 RVA: 0x00065B84 File Offset: 0x00063D84
[Token(Token = "0x6002FD0")]
[Address(RVA = "0x3088F0", Offset = "0x3076F0", VA = "0x1803088F0")]
public MTAssetsMathematics()
{
}
}
}

View File

@@ -0,0 +1,45 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x02000604 RID: 1540
[Token(Token = "0x2000604")]
[Serializable]
[StructLayout(3)]
public struct BlendShape
{
// Token: 0x06003039 RID: 12345 RVA: 0x00066484 File Offset: 0x00064684
[Token(Token = "0x6003039")]
[Address(RVA = "0x647100", Offset = "0x645F00", VA = "0x180647100")]
public BlendShape(string shapeName, BlendShapeFrame[] frames)
{
/*
An exception occurred when decompiling this method (06003039)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void MTAssets.UltimateLODSystem.MeshSimplifier.BlendShape::.ctor(System.String,MTAssets.UltimateLODSystem.MeshSimplifier.BlendShapeFrame[])
---> System.Exception: Basic block has to end with unconditional control flow.
{; Block_0:; stfld:string(BlendShape::ShapeName, ldloc:valuetype MTAssets.UltimateLODSystem.MeshSimplifier.BlendShape&(this), ldloc:string(shapeName)); stfld:valuetype MTAssets.UltimateLODSystem.MeshSimplifier.BlendShapeFrame[](BlendShape::Frames, ldloc:valuetype MTAssets.UltimateLODSystem.MeshSimplifier.BlendShape&(this), ldloc:valuetype MTAssets.UltimateLODSystem.MeshSimplifier.BlendShapeFrame[](frames)); };
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.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: 0x04003A83 RID: 14979
[Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003A83")]
public string ShapeName;
// Token: 0x04003A84 RID: 14980
[Cpp2IlInjected.FieldOffset(Offset = "0x8")]
[Token(Token = "0x4003A84")]
public BlendShapeFrame[] Frames;
}
}

View File

@@ -0,0 +1,56 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x02000605 RID: 1541
[Token(Token = "0x2000605")]
[Serializable]
[StructLayout(3)]
public struct BlendShapeFrame
{
// Token: 0x0600303A RID: 12346 RVA: 0x000664A0 File Offset: 0x000646A0
[Token(Token = "0x600303A")]
[Address(RVA = "0x8E1FA0", Offset = "0x8E0DA0", VA = "0x1808E1FA0")]
public BlendShapeFrame(float frameWeight, Vector3[] deltaVertices, Vector3[] deltaNormals, Vector3[] deltaTangents)
{
/*
An exception occurred when decompiling this method (0600303A)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void MTAssets.UltimateLODSystem.MeshSimplifier.BlendShapeFrame::.ctor(System.Single,UnityEngine.Vector3[],UnityEngine.Vector3[],UnityEngine.Vector3[])
---> System.Exception: Basic block has to end with unconditional control flow.
{; Block_0:; stfld:float32(BlendShapeFrame::FrameWeight, ldloc:valuetype MTAssets.UltimateLODSystem.MeshSimplifier.BlendShapeFrame&(this), ldloc:float32(frameWeight)); stfld:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3[](BlendShapeFrame::DeltaVertices, ldloc:valuetype MTAssets.UltimateLODSystem.MeshSimplifier.BlendShapeFrame&(this), ldloc:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3[](deltaVertices)); stfld:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3[](BlendShapeFrame::DeltaNormals, ldloc:valuetype MTAssets.UltimateLODSystem.MeshSimplifier.BlendShapeFrame&(this), ldloc:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3[](deltaNormals)); stfld:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3[](BlendShapeFrame::DeltaTangents, ldloc:valuetype MTAssets.UltimateLODSystem.MeshSimplifier.BlendShapeFrame&(this), ldc.i4:int32[exp:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3[]](0)); };
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.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: 0x04003A85 RID: 14981
[Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003A85")]
public float FrameWeight;
// Token: 0x04003A86 RID: 14982
[Cpp2IlInjected.FieldOffset(Offset = "0x8")]
[Token(Token = "0x4003A86")]
public Vector3[] DeltaVertices;
// Token: 0x04003A87 RID: 14983
[Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003A87")]
public Vector3[] DeltaNormals;
// Token: 0x04003A88 RID: 14984
[Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A88")]
public Vector3[] DeltaTangents;
}
}

View File

@@ -0,0 +1,26 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x0200060C RID: 1548
[Token(Token = "0x200060C")]
internal static class IOUtils
{
// Token: 0x060030D6 RID: 12502 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030D6")]
[Address(RVA = "0x10D1130", Offset = "0x10CFF30", VA = "0x1810D1130")]
internal static string MakeSafeRelativePath(string path)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030D7 RID: 12503 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030D7")]
[Address(RVA = "0x10D0FE0", Offset = "0x10CFDE0", VA = "0x1810D0FE0")]
internal static string MakeSafeFileName(string name)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
}

View File

@@ -0,0 +1,84 @@
using System;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
// Token: 0x0200060F RID: 1551
[Token(Token = "0x200060F")]
internal class BlendShapeContainer
{
// Token: 0x060030F5 RID: 12533 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030F5")]
[Address(RVA = "0x8E12E0", Offset = "0x8E00E0", VA = "0x1808E12E0")]
public BlendShapeContainer(BlendShape blendShape)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030F6 RID: 12534 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030F6")]
[Address(RVA = "0x3F1F10", Offset = "0x3F0D10", VA = "0x1803F1F10")]
public void MoveVertexElement(int dst, int src)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030F7 RID: 12535 RVA: 0x00066AD0 File Offset: 0x00064CD0
[Token(Token = "0x60030F7")]
[Address(RVA = "0x8E0E80", Offset = "0x8DFC80", VA = "0x1808E0E80")]
public void InterpolateVertexAttributes(int dst, int i0, int i1, int i2, ref Vector3 barycentricCoord)
{
BlendShapeFrameContainer[] array = this.frames;
int num = 0;
if (num < array.Length)
{
BlendShapeFrameContainer blendShapeFrameContainer = array[num];
BlendShapeFrameContainer[] array2 = this.frames;
num++;
}
}
// Token: 0x060030F8 RID: 12536 RVA: 0x00066B08 File Offset: 0x00064D08
[Token(Token = "0x60030F8")]
[Address(RVA = "0x8E0F60", Offset = "0x8DFD60", VA = "0x1808E0F60")]
public void Resize(int length, bool trimExess = false)
{
BlendShapeFrameContainer[] array = this.frames;
int num = 0;
if (num < array.Length)
{
BlendShapeFrameContainer blendShapeFrameContainer = array[num];
ResizableArray<Vector3> deltaVertices = blendShapeFrameContainer.deltaVertices;
int num2 = 0;
deltaVertices.Resize(length, trimExess, num2 != 0);
ResizableArray<Vector3> deltaNormals = blendShapeFrameContainer.deltaNormals;
int num3 = 0;
deltaNormals.Resize(length, trimExess, num3 != 0);
ResizableArray<Vector3> deltaTangents = blendShapeFrameContainer.deltaTangents;
int num4 = 0;
deltaTangents.Resize(length, trimExess, num4 != 0);
BlendShapeFrameContainer[] array2 = this.frames;
num++;
}
}
// Token: 0x060030F9 RID: 12537 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030F9")]
[Address(RVA = "0x8E10A0", Offset = "0x8DFEA0", VA = "0x1808E10A0")]
public BlendShape ToBlendShape()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003AC6 RID: 15046
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003AC6")]
private readonly string shapeName;
// Token: 0x04003AC7 RID: 15047
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003AC7")]
private readonly BlendShapeFrameContainer[] frames;
}
}

View File

@@ -0,0 +1,79 @@
using System;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
// Token: 0x02000610 RID: 1552
[Token(Token = "0x2000610")]
internal class BlendShapeFrameContainer
{
// Token: 0x060030FA RID: 12538 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030FA")]
[Address(RVA = "0x8E1E90", Offset = "0x8E0C90", VA = "0x1808E1E90")]
public BlendShapeFrameContainer(BlendShapeFrame frame)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030FB RID: 12539 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030FB")]
[Address(RVA = "0x8E1B50", Offset = "0x8E0950", VA = "0x1808E1B50")]
public void MoveVertexElement(int dst, int src)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030FC RID: 12540 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030FC")]
[Address(RVA = "0x8E1560", Offset = "0x8E0360", VA = "0x1808E1560")]
public void InterpolateVertexAttributes(int dst, int i0, int i1, int i2, ref Vector3 barycentricCoord)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030FD RID: 12541 RVA: 0x00066B84 File Offset: 0x00064D84
[Token(Token = "0x60030FD")]
[Address(RVA = "0x8E1CD0", Offset = "0x8E0AD0", VA = "0x1808E1CD0")]
public void Resize(int length, bool trimExess = false)
{
ResizableArray<Vector3> resizableArray = this.deltaVertices;
int num = 0;
resizableArray.Resize(length, trimExess, num != 0);
ResizableArray<Vector3> resizableArray2 = this.deltaNormals;
int num2 = 0;
resizableArray2.Resize(length, trimExess, num2 != 0);
ResizableArray<Vector3> resizableArray3 = this.deltaTangents;
int num3 = 0;
resizableArray3.Resize(length, trimExess, num3 != 0);
}
// Token: 0x060030FE RID: 12542 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030FE")]
[Address(RVA = "0x8E1D90", Offset = "0x8E0B90", VA = "0x1808E1D90")]
public BlendShapeFrame ToBlendShapeFrame()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003AC8 RID: 15048
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003AC8")]
private readonly float frameWeight;
// Token: 0x04003AC9 RID: 15049
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003AC9")]
private readonly ResizableArray<Vector3> deltaVertices;
// Token: 0x04003ACA RID: 15050
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003ACA")]
private readonly ResizableArray<Vector3> deltaNormals;
// Token: 0x04003ACB RID: 15051
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003ACB")]
private readonly ResizableArray<Vector3> deltaTangents;
}
}

View File

@@ -0,0 +1,29 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
// Token: 0x02000611 RID: 1553
[Token(Token = "0x2000611")]
internal struct BorderVertex
{
// Token: 0x060030FF RID: 12543 RVA: 0x00066BD4 File Offset: 0x00064DD4
[Token(Token = "0x60030FF")]
[Address(RVA = "0x3D89E0", Offset = "0x3D77E0", VA = "0x1803D89E0")]
public BorderVertex(int index, int hash)
{
this.index = index;
this.hash = hash;
}
// Token: 0x04003ACC RID: 15052
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003ACC")]
public int index;
// Token: 0x04003ACD RID: 15053
[FieldOffset(Offset = "0x4")]
[Token(Token = "0x4003ACD")]
public int hash;
}
}

View File

@@ -0,0 +1,39 @@
using System;
using System.Collections.Generic;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
// Token: 0x02000612 RID: 1554
[Token(Token = "0x2000612")]
internal class BorderVertexComparer : IComparer<BorderVertex>
{
// Token: 0x06003100 RID: 12544 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003100")]
[Address(RVA = "0xDE4AB0", Offset = "0xDE38B0", VA = "0x180DE4AB0", Slot = "4")]
public int Compare(BorderVertex x, BorderVertex y)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003101 RID: 12545 RVA: 0x00066BF0 File Offset: 0x00064DF0
[Token(Token = "0x6003101")]
[Address(RVA = "0x3D8B20", Offset = "0x3D7920", VA = "0x1803D8B20")]
public BorderVertexComparer()
{
}
// Token: 0x06003102 RID: 12546 RVA: 0x000020D3 File Offset: 0x000002D3
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6003102")]
[Address(RVA = "0xDE4AE0", Offset = "0xDE38E0", VA = "0x180DE4AE0")]
static BorderVertexComparer()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003ACE RID: 15054
[Token(Token = "0x4003ACE")]
public static readonly BorderVertexComparer instance;
}
}

View File

@@ -0,0 +1,29 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
// Token: 0x02000613 RID: 1555
[Token(Token = "0x2000613")]
internal struct Ref
{
// Token: 0x06003103 RID: 12547 RVA: 0x00066C04 File Offset: 0x00064E04
[Token(Token = "0x6003103")]
[Address(RVA = "0x3D89E0", Offset = "0x3D77E0", VA = "0x1803D89E0")]
public void Set(int tid, int tvertex)
{
this.tid = tid;
this.tvertex = tvertex;
}
// Token: 0x04003ACF RID: 15055
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003ACF")]
public int tid;
// Token: 0x04003AD0 RID: 15056
[FieldOffset(Offset = "0x4")]
[Token(Token = "0x4003AD0")]
public int tvertex;
}
}

View File

@@ -0,0 +1,235 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
// Token: 0x02000614 RID: 1556
[Token(Token = "0x2000614")]
internal struct Triangle : IEquatable<Triangle>
{
// Token: 0x170003BD RID: 957
[Token(Token = "0x170003BD")]
public int this[int index]
{
[Token(Token = "0x6003104")]
[Address(RVA = "0x7596A0", Offset = "0x7584A0", VA = "0x1807596A0")]
get
{
if (index == 0)
{
return this.v0;
}
if (index == 1)
{
return this.v1;
}
return this.v2;
}
[Token(Token = "0x6003105")]
[Address(RVA = "0x3F3240", Offset = "0x3F2040", VA = "0x1803F3240")]
set
{
/*
An exception occurred when decompiling this method (06003105)
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: 0x06003106 RID: 12550 RVA: 0x00066C88 File Offset: 0x00064E88
[Token(Token = "0x6003106")]
[Address(RVA = "0x759650", Offset = "0x758450", VA = "0x180759650")]
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: 0x06003107 RID: 12551 RVA: 0x00066D08 File Offset: 0x00064F08
[Token(Token = "0x6003107")]
[Address(RVA = "0x3F30D0", Offset = "0x3F1ED0", VA = "0x1803F30D0")]
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: 0x06003108 RID: 12552 RVA: 0x00066D50 File Offset: 0x00064F50
[Token(Token = "0x6003108")]
[Address(RVA = "0x3F31C0", Offset = "0x3F1FC0", VA = "0x1803F31C0")]
public void SetAttributeIndex(int index, int value)
{
/*
An exception occurred when decompiling this method (06003108)
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: 0x06003109 RID: 12553 RVA: 0x00066D8C File Offset: 0x00064F8C
[Token(Token = "0x6003109")]
[Address(RVA = "0x3F3140", Offset = "0x3F1F40", VA = "0x1803F3140")]
public void GetErrors(double[] err)
{
int length = err.Length;
}
// Token: 0x0600310A RID: 12554 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600310A")]
[Address(RVA = "0x2B4370", Offset = "0x2B3170", VA = "0x1802B4370", Slot = "2")]
public override int GetHashCode()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600310B RID: 12555 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600310B")]
[Address(RVA = "0x7595B0", Offset = "0x7583B0", VA = "0x1807595B0", Slot = "0")]
public override bool Equals(object obj)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600310C RID: 12556 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600310C")]
[Address(RVA = "0x759640", Offset = "0x758440", VA = "0x180759640", Slot = "4")]
public bool Equals(Triangle other)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003AD1 RID: 15057
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003AD1")]
public int index;
// Token: 0x04003AD2 RID: 15058
[FieldOffset(Offset = "0x4")]
[Token(Token = "0x4003AD2")]
public int v0;
// Token: 0x04003AD3 RID: 15059
[FieldOffset(Offset = "0x8")]
[Token(Token = "0x4003AD3")]
public int v1;
// Token: 0x04003AD4 RID: 15060
[FieldOffset(Offset = "0xC")]
[Token(Token = "0x4003AD4")]
public int v2;
// Token: 0x04003AD5 RID: 15061
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003AD5")]
public int subMeshIndex;
// Token: 0x04003AD6 RID: 15062
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x4003AD6")]
public int va0;
// Token: 0x04003AD7 RID: 15063
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003AD7")]
public int va1;
// Token: 0x04003AD8 RID: 15064
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4003AD8")]
public int va2;
// Token: 0x04003AD9 RID: 15065
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003AD9")]
public double err0;
// Token: 0x04003ADA RID: 15066
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003ADA")]
public double err1;
// Token: 0x04003ADB RID: 15067
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4003ADB")]
public double err2;
// Token: 0x04003ADC RID: 15068
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4003ADC")]
public double err3;
// Token: 0x04003ADD RID: 15069
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4003ADD")]
public bool deleted;
// Token: 0x04003ADE RID: 15070
[FieldOffset(Offset = "0x41")]
[Token(Token = "0x4003ADE")]
public bool dirty;
// Token: 0x04003ADF RID: 15071
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4003ADF")]
public Vector3d n;
}
}

View File

@@ -0,0 +1,87 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
// Token: 0x02000615 RID: 1557
[Token(Token = "0x2000615")]
internal class UVChannels<TVec>
{
// Token: 0x170003BE RID: 958
// (get) Token: 0x0600310D RID: 12557 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x170003BE")]
public TVec[][] Data
{
[Token(Token = "0x600310D")]
[Address(RVA = "0x3F32C0", Offset = "0x3F20C0", VA = "0x1803F32C0")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x170003BF RID: 959
[Token(Token = "0x170003BF")]
public ResizableArray<TVec> this[int index]
{
[Token(Token = "0x600310E")]
[Address(RVA = "0x521C30", Offset = "0x520A30", VA = "0x180521C30")]
get
{
return this.channels[index];
}
[Token(Token = "0x600310F")]
[Address(RVA = "0x7BF570", Offset = "0x7BE370", VA = "0x1807BF570")]
set
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x06003110 RID: 12560 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003110")]
[Address(RVA = "0x7BF3E0", Offset = "0x7BE1E0", VA = "0x1807BF3E0")]
public UVChannels()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003111 RID: 12561 RVA: 0x00066DC8 File Offset: 0x00064FC8
[Token(Token = "0x6003111")]
[Address(RVA = "0x7BF010", Offset = "0x7BDE10", VA = "0x1807BF010")]
public void Resize(int capacity, bool trimExess = false)
{
int num = 0;
ResizableArray resizableArray = this.channels[num];
if (resizableArray != 0)
{
int num2 = 0;
resizableArray.Resize(capacity, trimExess, num2 != 0);
}
num++;
}
// Token: 0x06003112 RID: 12562 RVA: 0x000020D3 File Offset: 0x000002D3
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6003112")]
[Address(RVA = "0x7BF200", Offset = "0x7BE000", VA = "0x1807BF200")]
static UVChannels()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003AE0 RID: 15072
[Token(Token = "0x4003AE0")]
private static readonly int UVChannelCount;
// Token: 0x04003AE1 RID: 15073
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003AE1")]
private ResizableArray<TVec>[] channels;
// Token: 0x04003AE2 RID: 15074
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003AE2")]
private TVec[][] channelsData;
}
}

View File

@@ -0,0 +1,82 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
// Token: 0x02000616 RID: 1558
[Token(Token = "0x2000616")]
internal struct Vertex : IEquatable<Vertex>
{
// Token: 0x06003113 RID: 12563 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003113")]
[Address(RVA = "0x8C79D0", Offset = "0x8C67D0", VA = "0x1808C79D0")]
public Vertex(int index, Vector3d p)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003114 RID: 12564 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003114")]
[Address(RVA = "0x2B4370", Offset = "0x2B3170", VA = "0x1802B4370", Slot = "2")]
public override int GetHashCode()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003115 RID: 12565 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003115")]
[Address(RVA = "0x8C7940", Offset = "0x8C6740", VA = "0x1808C7940", Slot = "0")]
public override bool Equals(object obj)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003116 RID: 12566 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003116")]
[Address(RVA = "0x759640", Offset = "0x758440", VA = "0x180759640", Slot = "4")]
public bool Equals(Vertex other)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003AE3 RID: 15075
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003AE3")]
public int index;
// Token: 0x04003AE4 RID: 15076
[FieldOffset(Offset = "0x8")]
[Token(Token = "0x4003AE4")]
public Vector3d p;
// Token: 0x04003AE5 RID: 15077
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003AE5")]
public int tstart;
// Token: 0x04003AE6 RID: 15078
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x4003AE6")]
public int tcount;
// Token: 0x04003AE7 RID: 15079
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003AE7")]
public SymmetricMatrix q;
// Token: 0x04003AE8 RID: 15080
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x4003AE8")]
public bool borderEdge;
// Token: 0x04003AE9 RID: 15081
[FieldOffset(Offset = "0x79")]
[Token(Token = "0x4003AE9")]
public bool uvSeamEdge;
// Token: 0x04003AEA RID: 15082
[FieldOffset(Offset = "0x7A")]
[Token(Token = "0x4003AEA")]
public bool uvFoldoverEdge;
}
}

View File

@@ -0,0 +1,58 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x02000606 RID: 1542
[Token(Token = "0x2000606")]
public static class MathHelper
{
// Token: 0x0600303B RID: 12347 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600303B")]
[Address(RVA = "0x401980", Offset = "0x400780", VA = "0x180401980")]
public static double Min(double val1, double val2, double val3)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600303C RID: 12348 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600303C")]
[Address(RVA = "0x401960", Offset = "0x400760", VA = "0x180401960")]
public static double Clamp(double value, double min, double max)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600303D RID: 12349 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600303D")]
[Address(RVA = "0x4019A0", Offset = "0x4007A0", VA = "0x1804019A0")]
public static double TriangleArea(ref Vector3d p0, ref Vector3d p1, ref Vector3d p2)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003A89 RID: 14985
[Token(Token = "0x4003A89")]
public const float PI = 3.1415927f;
// Token: 0x04003A8A RID: 14986
[Token(Token = "0x4003A8A")]
public const double PId = 3.141592653589793;
// Token: 0x04003A8B RID: 14987
[Token(Token = "0x4003A8B")]
public const float Deg2Rad = 0.017453292f;
// Token: 0x04003A8C RID: 14988
[Token(Token = "0x4003A8C")]
public const double Deg2Radd = 0.017453292519943295;
// Token: 0x04003A8D RID: 14989
[Token(Token = "0x4003A8D")]
public const float Rad2Deg = 57.295776f;
// Token: 0x04003A8E RID: 14990
[Token(Token = "0x4003A8E")]
public const double Rad2Degd = 57.29577951308232;
}
}

View File

@@ -0,0 +1,108 @@
using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x02000609 RID: 1545
[Token(Token = "0x2000609")]
public static class MeshCombiner
{
// Token: 0x0600306A RID: 12394 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600306A")]
[Address(RVA = "0x404040", Offset = "0x402E40", VA = "0x180404040")]
public static Mesh CombineMeshes(Transform rootTransform, MeshRenderer[] renderers, out Material[] resultMaterials)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600306B RID: 12395 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600306B")]
[Address(RVA = "0x405F00", Offset = "0x404D00", VA = "0x180405F00")]
public static Mesh CombineMeshes(Transform rootTransform, SkinnedMeshRenderer[] renderers, out Material[] resultMaterials, out Transform[] resultBones)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600306C RID: 12396 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600306C")]
[Address(RVA = "0x4065F0", Offset = "0x4053F0", VA = "0x1804065F0")]
public static Mesh CombineMeshes(Mesh[] meshes, Matrix4x4[] transforms, Material[][] materials, out Material[] resultMaterials)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600306D RID: 12397 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600306D")]
[Address(RVA = "0x404880", Offset = "0x403680", VA = "0x180404880")]
public static Mesh CombineMeshes(Mesh[] meshes, Matrix4x4[] transforms, Material[][] materials, Transform[][] bones, out Material[] resultMaterials, out Transform[] resultBones)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600306E RID: 12398 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600306E")]
[Address(RVA = "0x406710", Offset = "0x405510", VA = "0x180406710")]
private static void CopyVertexPositions(ICollection<Vector3> list, Vector3[] arr)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600306F RID: 12399 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600306F")]
[Address(RVA = "0x4E8BC0", Offset = "0x4E79C0", VA = "0x1804E8BC0")]
private static void CopyVertexAttributes<T>(ref List<T> dest, IEnumerable<T> src, int previousVertexCount, int meshVertexCount, int totalVertexCount, T defaultValue)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003070 RID: 12400 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003070")]
[Address(RVA = "0x4E9160", Offset = "0x4E7F60", VA = "0x1804E9160")]
private static T[] MergeArrays<T>(T[] arr1, T[] arr2)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003071 RID: 12401 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003071")]
[Address(RVA = "0x406D60", Offset = "0x405B60", VA = "0x180406D60")]
private static void TransformVertices(Vector3[] vertices, ref Matrix4x4 transform)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003072 RID: 12402 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003072")]
[Address(RVA = "0x406B40", Offset = "0x405940", VA = "0x180406B40")]
private static void TransformNormals(Vector3[] normals, ref Matrix4x4 transform)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003073 RID: 12403 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003073")]
[Address(RVA = "0x406C00", Offset = "0x405A00", VA = "0x180406C00")]
private static void TransformTangents(Vector4[] tangents, ref Matrix4x4 transform)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003074 RID: 12404 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003074")]
[Address(RVA = "0x406870", Offset = "0x405670", VA = "0x180406870")]
private static void RemapBones(BoneWeight[] boneWeights, int[] boneIndices)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003075 RID: 12405 RVA: 0x00066680 File Offset: 0x00064880
[Token(Token = "0x6003075")]
[Address(RVA = "0x404020", Offset = "0x402E20", VA = "0x180404020")]
private static bool CanReadMesh(Mesh mesh)
{
return mesh.isReadable;
}
}
}

View File

@@ -0,0 +1,129 @@
using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
using UnityEngine.Rendering;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x0200060D RID: 1549
[Token(Token = "0x200060D")]
public static class MeshUtils
{
// Token: 0x060030D8 RID: 12504 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030D8")]
[Address(RVA = "0xBC3010", Offset = "0xBC1E10", VA = "0x180BC3010")]
public static Mesh CreateMesh(Vector3[] vertices, int[][] indices, Vector3[] normals, Vector4[] tangents, Color[] colors, BoneWeight[] boneWeights, List<Vector2>[] uvs, Matrix4x4[] bindposes, BlendShape[] blendShapes)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030D9 RID: 12505 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030D9")]
[Address(RVA = "0xBC36E0", Offset = "0xBC24E0", VA = "0x180BC36E0")]
public static Mesh CreateMesh(Vector3[] vertices, int[][] indices, Vector3[] normals, Vector4[] tangents, Color[] colors, BoneWeight[] boneWeights, List<Vector4>[] uvs, Matrix4x4[] bindposes, BlendShape[] blendShapes)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030DA RID: 12506 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030DA")]
[Address(RVA = "0xBC30F0", Offset = "0xBC1EF0", VA = "0x180BC30F0")]
public static Mesh CreateMesh(Vector3[] vertices, int[][] indices, Vector3[] normals, Vector4[] tangents, Color[] colors, BoneWeight[] boneWeights, List<Vector2>[] uvs2D, List<Vector3>[] uvs3D, List<Vector4>[] uvs4D, Matrix4x4[] bindposes, BlendShape[] blendShapes)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030DB RID: 12507 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030DB")]
[Address(RVA = "0xBC3850", Offset = "0xBC2650", VA = "0x180BC3850")]
public static BlendShape[] GetMeshBlendShapes(Mesh mesh)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030DC RID: 12508 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030DC")]
[Address(RVA = "0xBC2B70", Offset = "0xBC1970", VA = "0x180BC2B70")]
public static void ApplyMeshBlendShapes(Mesh mesh, BlendShape[] blendShapes)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030DD RID: 12509 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030DD")]
[Address(RVA = "0xBC4110", Offset = "0xBC2F10", VA = "0x180BC4110")]
public static IList<Vector4>[] GetMeshUVs(Mesh mesh)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030DE RID: 12510 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030DE")]
[Address(RVA = "0xBC3BD0", Offset = "0xBC29D0", VA = "0x180BC3BD0")]
public static IList<Vector2> GetMeshUVs2D(Mesh mesh, int channel)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030DF RID: 12511 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030DF")]
[Address(RVA = "0xBC3D90", Offset = "0xBC2B90", VA = "0x180BC3D90")]
public static IList<Vector3> GetMeshUVs3D(Mesh mesh, int channel)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030E0 RID: 12512 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030E0")]
[Address(RVA = "0xBC3F50", Offset = "0xBC2D50", VA = "0x180BC3F50")]
public static IList<Vector4> GetMeshUVs(Mesh mesh, int channel)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030E1 RID: 12513 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030E1")]
[Address(RVA = "0xBC44D0", Offset = "0xBC32D0", VA = "0x180BC44D0")]
public static int GetUsedUVComponents(IList<Vector4> uvs)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030E2 RID: 12514 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030E2")]
[Address(RVA = "0xBC2D20", Offset = "0xBC1B20", VA = "0x180BC2D20")]
public static Vector2[] ConvertUVsTo2D(IList<Vector4> uvs)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030E3 RID: 12515 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030E3")]
[Address(RVA = "0xBC2E90", Offset = "0xBC1C90", VA = "0x180BC2E90")]
public static Vector3[] ConvertUVsTo3D(IList<Vector4> uvs)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030E4 RID: 12516 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030E4")]
[Address(RVA = "0xBC42F0", Offset = "0xBC30F0", VA = "0x180BC42F0")]
public static Vector2Int[] GetSubMeshIndexMinMax(int[][] indices, out IndexFormat indexFormat)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030E5 RID: 12517 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030E5")]
[Address(RVA = "0xBC37C0", Offset = "0xBC25C0", VA = "0x180BC37C0")]
private static void GetIndexMinMax(int[] indices, out int minIndex, out int maxIndex)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003AC2 RID: 15042
[Token(Token = "0x4003AC2")]
public static readonly int UVChannelCount;
}
}

View File

@@ -0,0 +1,149 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x0200060E RID: 1550
[Token(Token = "0x200060E")]
internal sealed class ResizableArray<T>
{
// Token: 0x170003BA RID: 954
// (get) Token: 0x060030E7 RID: 12519 RVA: 0x00066ABC File Offset: 0x00064CBC
[Token(Token = "0x170003BA")]
public int Length
{
[Token(Token = "0x60030E7")]
[Address(RVA = "0x296740", Offset = "0x295540", VA = "0x180296740")]
get
{
return this.length;
}
}
// Token: 0x170003BB RID: 955
// (get) Token: 0x060030E8 RID: 12520 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x170003BB")]
public T[] Data
{
[Token(Token = "0x60030E8")]
[Address(RVA = "0x2B4010", Offset = "0x2B2E10", VA = "0x1802B4010")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x170003BC RID: 956
[Token(Token = "0x170003BC")]
public T this[int index]
{
[Token(Token = "0x60030E9")]
[Address(RVA = "0x521C30", Offset = "0x520A30", VA = "0x180521C30")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
[Token(Token = "0x60030EA")]
[Address(RVA = "0xA19230", Offset = "0xA18030", VA = "0x180A19230")]
set
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x060030EB RID: 12523 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030EB")]
[Address(RVA = "0x294B60", Offset = "0x293960", VA = "0x180294B60")]
public ResizableArray(int capacity)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030EC RID: 12524 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030EC")]
[Address(RVA = "0xA18CD0", Offset = "0xA17AD0", VA = "0x180A18CD0")]
public ResizableArray(int capacity, int length)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030ED RID: 12525 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030ED")]
[Address(RVA = "0xA178D0", Offset = "0xA166D0", VA = "0x180A178D0")]
public ResizableArray(T[] initialArray)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030EE RID: 12526 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030EE")]
[Address(RVA = "0xA159E0", Offset = "0xA147E0", VA = "0x180A159E0")]
private void IncreaseCapacity(int capacity)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030EF RID: 12527 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030EF")]
[Address(RVA = "0x7AA010", Offset = "0x7A8E10", VA = "0x1807AA010")]
public void Clear()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030F0 RID: 12528 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030F0")]
[Address(RVA = "0xA16190", Offset = "0xA14F90", VA = "0x180A16190")]
public void Resize(int length, bool trimExess = false, bool clearMemory = false)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030F1 RID: 12529 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030F1")]
[Address(RVA = "0xA16910", Offset = "0xA15710", VA = "0x180A16910")]
public void TrimExcess()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030F2 RID: 12530 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030F2")]
[Address(RVA = "0xA15410", Offset = "0xA14210", VA = "0x180A15410")]
public void Add(T item)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030F3 RID: 12531 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60030F3")]
[Address(RVA = "0xA16890", Offset = "0xA15690", VA = "0x180A16890")]
public T[] ToArray()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060030F4 RID: 12532 RVA: 0x000020D3 File Offset: 0x000002D3
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x60030F4")]
[Address(RVA = "0xA169C0", Offset = "0xA157C0", VA = "0x180A169C0")]
static ResizableArray()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003AC3 RID: 15043
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003AC3")]
private T[] items;
// Token: 0x04003AC4 RID: 15044
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003AC4")]
private int length;
// Token: 0x04003AC5 RID: 15045
[Token(Token = "0x4003AC5")]
private static T[] emptyArr;
}
}

View File

@@ -0,0 +1,88 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x0200060B RID: 1547
[Token(Token = "0x200060B")]
[Serializable]
[StructLayout(3)]
public struct SimplificationOptions
{
// Token: 0x060030D5 RID: 12501 RVA: 0x000020D3 File Offset: 0x000002D3
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x60030D5")]
[Address(RVA = "0x11F36D0", Offset = "0x11F24D0", VA = "0x1811F36D0")]
static SimplificationOptions()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003AB7 RID: 15031
[Token(Token = "0x4003AB7")]
public static readonly SimplificationOptions Default;
// Token: 0x04003AB8 RID: 15032
[Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003AB8")]
[Tooltip("If the border edges should be preserved.")]
public bool PreserveBorderEdges;
// Token: 0x04003AB9 RID: 15033
[Cpp2IlInjected.FieldOffset(Offset = "0x1")]
[Token(Token = "0x4003AB9")]
[Tooltip("If the UV seam edges should be preserved.")]
public bool PreserveUVSeamEdges;
// Token: 0x04003ABA RID: 15034
[Cpp2IlInjected.FieldOffset(Offset = "0x2")]
[Token(Token = "0x4003ABA")]
[Tooltip("If the UV foldover edges should be preserved.")]
public bool PreserveUVFoldoverEdges;
// Token: 0x04003ABB RID: 15035
[Cpp2IlInjected.FieldOffset(Offset = "0x3")]
[Token(Token = "0x4003ABB")]
[Tooltip("If the discrete curvature of the mesh surface be taken into account during simplification. Taking surface curvature into account can result in very good quality mesh simplification, but it can slow the simplification process significantly.")]
public bool PreserveSurfaceCurvature;
// Token: 0x04003ABC RID: 15036
[Cpp2IlInjected.FieldOffset(Offset = "0x4")]
[Token(Token = "0x4003ABC")]
[Tooltip("If a feature for smarter vertex linking should be enabled, reducing artifacts at the cost of slower simplification.")]
public bool EnableSmartLink;
// Token: 0x04003ABD RID: 15037
[Cpp2IlInjected.FieldOffset(Offset = "0x8")]
[Token(Token = "0x4003ABD")]
[Tooltip("The maximum distance between two vertices in order to link them.")]
public double VertexLinkDistance;
// Token: 0x04003ABE RID: 15038
[Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003ABE")]
[Tooltip("The maximum iteration count. Higher number is more expensive but can bring you closer to your target quality.")]
public int MaxIterationCount;
// Token: 0x04003ABF RID: 15039
[Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003ABF")]
[Tooltip("The agressiveness of the mesh simplification. Higher number equals higher quality, but more expensive to run.")]
public double Agressiveness;
// Token: 0x04003AC0 RID: 15040
[Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003AC0")]
[Tooltip("If a manual UV component count should be used (set by UV Component Count below), instead of the automatic detection.")]
public bool ManualUVComponentCount;
// Token: 0x04003AC1 RID: 15041
[Cpp2IlInjected.FieldOffset(Offset = "0x24")]
[Token(Token = "0x4003AC1")]
[Tooltip("The UV component count. The same UV component count will be used on all UV channels.")]
[Range(0f, 4f)]
public int UVComponentCount;
}
}

View File

@@ -0,0 +1,147 @@
using System;
using Cpp2IlInjected;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x02000607 RID: 1543
[Token(Token = "0x2000607")]
public struct SymmetricMatrix
{
// Token: 0x1700039B RID: 923
[Token(Token = "0x1700039B")]
public double this[int index]
{
[Token(Token = "0x600303E")]
[Address(RVA = "0x12F5A80", Offset = "0x12F4880", VA = "0x1812F5A80")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x0600303F RID: 12351 RVA: 0x000664C8 File Offset: 0x000646C8
[Token(Token = "0x600303F")]
[Address(RVA = "0x12F5E50", Offset = "0x12F4C50", VA = "0x1812F5E50")]
public SymmetricMatrix(double c)
{
this.m0 = c;
this.m2 = c;
this.m4 = c;
this.m6 = c;
this.m8 = c;
}
// Token: 0x06003040 RID: 12352 RVA: 0x000664F8 File Offset: 0x000646F8
[Token(Token = "0x6003040")]
[Address(RVA = "0x12F5DF0", Offset = "0x12F4BF0", VA = "0x1812F5DF0")]
public SymmetricMatrix(double m0, double m1, double m2, double m3, double m4, double m5, double m6, double m7, double m8, double m9)
{
}
// Token: 0x06003041 RID: 12353 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003041")]
[Address(RVA = "0x12F5E70", Offset = "0x12F4C70", VA = "0x1812F5E70")]
public SymmetricMatrix(double a, double b, double c, double d)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003042 RID: 12354 RVA: 0x00066508 File Offset: 0x00064708
[Token(Token = "0x6003042")]
[Address(RVA = "0x12F5EF0", Offset = "0x12F4CF0", VA = "0x1812F5EF0")]
public static SymmetricMatrix operator +(SymmetricMatrix a, SymmetricMatrix b)
{
return a;
}
// Token: 0x06003043 RID: 12355 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003043")]
[Address(RVA = "0x12F5B80", Offset = "0x12F4980", VA = "0x1812F5B80")]
internal double Determinant1()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003044 RID: 12356 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003044")]
[Address(RVA = "0x12F5C10", Offset = "0x12F4A10", VA = "0x1812F5C10")]
internal double Determinant2()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003045 RID: 12357 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003045")]
[Address(RVA = "0x12F5CB0", Offset = "0x12F4AB0", VA = "0x1812F5CB0")]
internal double Determinant3()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003046 RID: 12358 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003046")]
[Address(RVA = "0x12F5D50", Offset = "0x12F4B50", VA = "0x1812F5D50")]
internal double Determinant4()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003047 RID: 12359 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003047")]
[Address(RVA = "0x12F57D0", Offset = "0x12F45D0", VA = "0x1812F57D0")]
public double Determinant(int a11, int a12, int a13, int a21, int a22, int a23, int a31, int a32, int a33)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003A8F RID: 14991
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003A8F")]
public double m0;
// Token: 0x04003A90 RID: 14992
[FieldOffset(Offset = "0x8")]
[Token(Token = "0x4003A90")]
public double m1;
// Token: 0x04003A91 RID: 14993
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003A91")]
public double m2;
// Token: 0x04003A92 RID: 14994
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A92")]
public double m3;
// Token: 0x04003A93 RID: 14995
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A93")]
public double m4;
// Token: 0x04003A94 RID: 14996
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003A94")]
public double m5;
// Token: 0x04003A95 RID: 14997
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4003A95")]
public double m6;
// Token: 0x04003A96 RID: 14998
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4003A96")]
public double m7;
// Token: 0x04003A97 RID: 14999
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4003A97")]
public double m8;
// Token: 0x04003A98 RID: 15000
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4003A98")]
public double m9;
}
}

View File

@@ -0,0 +1,335 @@
using System;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
// Token: 0x02000608 RID: 1544
[Token(Token = "0x2000608")]
public struct Vector3d : IEquatable<Vector3d>
{
// Token: 0x1700039C RID: 924
// (get) Token: 0x06003048 RID: 12360 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x1700039C")]
public double Magnitude
{
[Token(Token = "0x6003048")]
[Address(RVA = "0x8C62B0", Offset = "0x8C50B0", VA = "0x1808C62B0")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x1700039D RID: 925
// (get) Token: 0x06003049 RID: 12361 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x1700039D")]
public double MagnitudeSqr
{
[Token(Token = "0x6003049")]
[Address(RVA = "0x8C6280", Offset = "0x8C5080", VA = "0x1808C6280")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x1700039E RID: 926
// (get) Token: 0x0600304A RID: 12362 RVA: 0x00066518 File Offset: 0x00064718
[Token(Token = "0x1700039E")]
public Vector3d Normalized
{
[Token(Token = "0x600304A")]
[Address(RVA = "0x8C6360", Offset = "0x8C5160", VA = "0x1808C6360")]
get
{
int num = 0;
int num2 = 0;
this.x = (double)num2;
this.z = (double)num;
return ref this;
}
}
// Token: 0x1700039F RID: 927
[Token(Token = "0x1700039F")]
public double this[int index]
{
[Token(Token = "0x600304B")]
[Address(RVA = "0x8C61E0", Offset = "0x8C4FE0", VA = "0x1808C61E0")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
[Token(Token = "0x600304C")]
[Address(RVA = "0x8C66E0", Offset = "0x8C54E0", VA = "0x1808C66E0")]
set
{
/*
An exception occurred when decompiling this method (0600304C)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void MTAssets.UltimateLODSystem.MeshSimplifier.Vector3d::set_Item(System.Int32,System.Double)
---> System.Exception: Basic block has to end with unconditional control flow.
{; IL_0F:; stloc:ArgumentOutOfRangeException(var_0_1E, newobj:ArgumentOutOfRangeException(ArgumentOutOfRangeException::.ctor, ldstr:string("index"), ldstr:string("Invalid Vector3d 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: 0x0600304D RID: 12365 RVA: 0x00066564 File Offset: 0x00064764
[Token(Token = "0x600304D")]
[Address(RVA = "0x8C61D0", Offset = "0x8C4FD0", VA = "0x1808C61D0")]
public Vector3d(double value)
{
this.x = value;
}
// Token: 0x0600304E RID: 12366 RVA: 0x00066578 File Offset: 0x00064778
[Token(Token = "0x600304E")]
[Address(RVA = "0x8C5FD0", Offset = "0x8C4DD0", VA = "0x1808C5FD0")]
public Vector3d(double x, double y, double z)
{
}
// Token: 0x0600304F RID: 12367 RVA: 0x00066588 File Offset: 0x00064788
[Token(Token = "0x600304F")]
[Address(RVA = "0x8C6190", Offset = "0x8C4F90", VA = "0x1808C6190")]
public Vector3d(Vector3 vector)
{
float num = vector.z;
}
// Token: 0x06003050 RID: 12368 RVA: 0x0006659C File Offset: 0x0006479C
[Token(Token = "0x6003050")]
[Address(RVA = "0x8C63E0", Offset = "0x8C51E0", VA = "0x1808C63E0")]
public static Vector3d operator +(Vector3d a, Vector3d b)
{
return a;
}
// Token: 0x06003051 RID: 12369 RVA: 0x000665AC File Offset: 0x000647AC
[Token(Token = "0x6003051")]
[Address(RVA = "0x8C6670", Offset = "0x8C5470", VA = "0x1808C6670")]
public static Vector3d operator -(Vector3d a, Vector3d b)
{
return a;
}
// Token: 0x06003052 RID: 12370 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003052")]
[Address(RVA = "0x8C6610", Offset = "0x8C5410", VA = "0x1808C6610")]
public static Vector3d operator *(Vector3d a, double d)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003053 RID: 12371 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003053")]
[Address(RVA = "0x8C6640", Offset = "0x8C5440", VA = "0x1808C6640")]
public static Vector3d operator *(double d, Vector3d a)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003054 RID: 12372 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003054")]
[Address(RVA = "0x8C6420", Offset = "0x8C5220", VA = "0x1808C6420")]
public static Vector3d operator /(Vector3d a, double d)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003055 RID: 12373 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003055")]
[Address(RVA = "0x8C66B0", Offset = "0x8C54B0", VA = "0x1808C66B0")]
public static Vector3d operator -(Vector3d a)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003056 RID: 12374 RVA: 0x000665BC File Offset: 0x000647BC
[Token(Token = "0x6003056")]
[Address(RVA = "0x8C6450", Offset = "0x8C5250", VA = "0x1808C6450")]
public static bool operator ==(Vector3d lhs, Vector3d rhs)
{
return typeof(Vector3d).TypeHandle != null;
}
// Token: 0x06003057 RID: 12375 RVA: 0x000665D0 File Offset: 0x000647D0
[Token(Token = "0x6003057")]
[Address(RVA = "0x8C6570", Offset = "0x8C5370", VA = "0x1808C6570")]
public static bool operator !=(Vector3d lhs, Vector3d rhs)
{
return typeof(Vector3d).TypeHandle != null;
}
// Token: 0x06003058 RID: 12376 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003058")]
[Address(RVA = "0x8C6530", Offset = "0x8C5330", VA = "0x1808C6530")]
public static implicit operator Vector3d(Vector3 v)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003059 RID: 12377 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003059")]
[Address(RVA = "0x8C64F0", Offset = "0x8C52F0", VA = "0x1808C64F0")]
public static explicit operator Vector3(Vector3d v)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600305A RID: 12378 RVA: 0x000665E4 File Offset: 0x000647E4
[Token(Token = "0x600305A")]
[Address(RVA = "0x8C5FD0", Offset = "0x8C4DD0", VA = "0x1808C5FD0")]
public void Set(double x, double y, double z)
{
}
// Token: 0x0600305B RID: 12379 RVA: 0x000665F4 File Offset: 0x000647F4
[Token(Token = "0x600305B")]
[Address(RVA = "0x8C5F70", Offset = "0x8C4D70", VA = "0x1808C5F70")]
public void Scale(ref Vector3d scale)
{
}
// Token: 0x0600305C RID: 12380 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600305C")]
[Address(RVA = "0x8C5E50", Offset = "0x8C4C50", VA = "0x1808C5E50")]
public void Normalize()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600305D RID: 12381 RVA: 0x00066604 File Offset: 0x00064804
[Token(Token = "0x600305D")]
[Address(RVA = "0x8C5BB0", Offset = "0x8C49B0", VA = "0x1808C5BB0")]
public void Clamp(double min, double max)
{
}
// Token: 0x0600305E RID: 12382 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600305E")]
[Address(RVA = "0x8C5DA0", Offset = "0x8C4BA0", VA = "0x1808C5DA0", Slot = "2")]
public override int GetHashCode()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600305F RID: 12383 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600305F")]
[Address(RVA = "0x8C5CF0", Offset = "0x8C4AF0", VA = "0x1808C5CF0", Slot = "0")]
public override bool Equals(object obj)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003060 RID: 12384 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003060")]
[Address(RVA = "0x8C5CB0", Offset = "0x8C4AB0", VA = "0x1808C5CB0", Slot = "4")]
public bool Equals(Vector3d other)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003061 RID: 12385 RVA: 0x00066614 File Offset: 0x00064814
[Token(Token = "0x6003061")]
[Address(RVA = "0x8C6080", Offset = "0x8C4E80", VA = "0x1808C6080", Slot = "3")]
public override string ToString()
{
return string.Format("({0:F1}, {1:F1}, {2:F1})", "({0:F1}, {1:F1}, {2:F1})", "({0:F1}, {1:F1}, {2:F1})", "({0:F1}, {1:F1}, {2:F1})");
}
// Token: 0x06003062 RID: 12386 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003062")]
[Address(RVA = "0x8C5FE0", Offset = "0x8C4DE0", VA = "0x1808C5FE0")]
public string ToString(string format)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003063 RID: 12387 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003063")]
[Address(RVA = "0x8C5C80", Offset = "0x8C4A80", VA = "0x1808C5C80")]
public static double Dot(ref Vector3d lhs, ref Vector3d rhs)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003064 RID: 12388 RVA: 0x0006663C File Offset: 0x0006483C
[Token(Token = "0x6003064")]
[Address(RVA = "0x8C5C10", Offset = "0x8C4A10", VA = "0x1808C5C10")]
public static void Cross(ref Vector3d lhs, ref Vector3d rhs, out Vector3d result)
{
}
// Token: 0x06003065 RID: 12389 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003065")]
[Address(RVA = "0x8C5A10", Offset = "0x8C4810", VA = "0x1808C5A10")]
public static double Angle(ref Vector3d from, ref Vector3d to)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003066 RID: 12390 RVA: 0x0006664C File Offset: 0x0006484C
[Token(Token = "0x6003066")]
[Address(RVA = "0x8C5E00", Offset = "0x8C4C00", VA = "0x1808C5E00")]
public static void Lerp(ref Vector3d a, ref Vector3d b, double t, out Vector3d result)
{
}
// Token: 0x06003067 RID: 12391 RVA: 0x0006665C File Offset: 0x0006485C
[Token(Token = "0x6003067")]
[Address(RVA = "0x8C5FA0", Offset = "0x8C4DA0", VA = "0x1808C5FA0")]
public static void Scale(ref Vector3d a, ref Vector3d b, out Vector3d result)
{
}
// Token: 0x06003068 RID: 12392 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003068")]
[Address(RVA = "0x8C5EB0", Offset = "0x8C4CB0", VA = "0x1808C5EB0")]
public static void Normalize(ref Vector3d value, out Vector3d result)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003A99 RID: 15001
[Token(Token = "0x4003A99")]
public static readonly Vector3d zero = 0;
// Token: 0x04003A9A RID: 15002
[Token(Token = "0x4003A9A")]
public const double Epsilon = 5E-324;
// Token: 0x04003A9B RID: 15003
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4003A9B")]
public double x;
// Token: 0x04003A9C RID: 15004
[FieldOffset(Offset = "0x8")]
[Token(Token = "0x4003A9C")]
public double y;
// Token: 0x04003A9D RID: 15005
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003A9D")]
public double z;
}
}

View File

@@ -0,0 +1,77 @@
using System;
using System.Collections;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005F2 RID: 1522
[Token(Token = "0x20005F2")]
[AddComponentMenu("")]
public class RuntimeCameraDetector : MonoBehaviour
{
// Token: 0x06002FD4 RID: 12244 RVA: 0x00065BAC File Offset: 0x00063DAC
[Token(Token = "0x6002FD4")]
[Address(RVA = "0x42F450", Offset = "0x42E250", VA = "0x18042F450")]
public void Awake()
{
Camera[] allCameras = Camera.allCameras;
this.currentArrayOfCameras = allCameras;
int num;
RuntimeCameraDetector.<ArrayOfCamerasDelayedUpdater>d__4 <ArrayOfCamerasDelayedUpdater>d__ = new RuntimeCameraDetector.<ArrayOfCamerasDelayedUpdater>d__4(num);
num = 0;
<ArrayOfCamerasDelayedUpdater>d__.<>4__this = this;
Coroutine coroutine = base.StartCoroutine(<ArrayOfCamerasDelayedUpdater>d__);
int num2;
RuntimeCameraDetector.<CurrentCameraOnScreenDetector>d__5 <CurrentCameraOnScreenDetector>d__ = new RuntimeCameraDetector.<CurrentCameraOnScreenDetector>d__5(num2);
num2 = 0;
<CurrentCameraOnScreenDetector>d__.<>4__this = this;
Coroutine coroutine2 = base.StartCoroutine(<CurrentCameraOnScreenDetector>d__);
}
// Token: 0x06002FD5 RID: 12245 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FD5")]
[Address(RVA = "0x42F3E0", Offset = "0x42E1E0", VA = "0x18042F3E0")]
private IEnumerator ArrayOfCamerasDelayedUpdater()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FD6 RID: 12246 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FD6")]
[Address(RVA = "0x42F540", Offset = "0x42E340", VA = "0x18042F540")]
private IEnumerator CurrentCameraOnScreenDetector()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FD7 RID: 12247 RVA: 0x00065C08 File Offset: 0x00063E08
[Token(Token = "0x6002FD7")]
[Address(RVA = "0x42F5B0", Offset = "0x42E3B0", VA = "0x18042F5B0")]
public RuntimeCameraDetector()
{
WaitForSecondsRealtime waitForSecondsRealtime = new WaitForSecondsRealtime(0.5f);
this.DELAY_BETWEEN_ARRAY_OF_CAMERAS_UPDATE = waitForSecondsRealtime;
WaitForSecondsRealtime waitForSecondsRealtime2 = new WaitForSecondsRealtime(0.09f);
this.DELAY_BETWEEN_CURRENT_CAMERA_DETECTOR = waitForSecondsRealtime2;
Camera[] array = new Camera[0];
this.currentArrayOfCameras = array;
base..ctor();
}
// Token: 0x04003A12 RID: 14866
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A12")]
private WaitForSecondsRealtime DELAY_BETWEEN_ARRAY_OF_CAMERAS_UPDATE;
// Token: 0x04003A13 RID: 14867
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A13")]
private WaitForSecondsRealtime DELAY_BETWEEN_CURRENT_CAMERA_DETECTOR;
// Token: 0x04003A14 RID: 14868
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003A14")]
private Camera[] currentArrayOfCameras;
}
}

View File

@@ -0,0 +1,45 @@
using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005F5 RID: 1525
[Token(Token = "0x20005F5")]
[AddComponentMenu("")]
public class RuntimeInstancesDetector : MonoBehaviour
{
// Token: 0x06002FE4 RID: 12260 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FE4")]
[Address(RVA = "0x430340", Offset = "0x42F140", VA = "0x180430340")]
public void RegisterNewUlodOptimizerInThisScene(UltimateLevelOfDetailOptimizer optimizer)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FE5 RID: 12261 RVA: 0x00065D00 File Offset: 0x00063F00
[Token(Token = "0x6002FE5")]
[Address(RVA = "0x430400", Offset = "0x42F200", VA = "0x180430400")]
public RuntimeInstancesDetector()
{
List<UltimateLevelOfDetail> list = new List();
this.instancesOfUlodInThisScene = list;
List<UltimateLevelOfDetailOptimizer> list2 = new List();
this.instancesOfUlodOptimizerInThisScene = list2;
base..ctor();
}
// Token: 0x04003A1B RID: 14875
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A1B")]
[HideInInspector]
public List<UltimateLevelOfDetail> instancesOfUlodInThisScene;
// Token: 0x04003A1C RID: 14876
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A1C")]
[HideInInspector]
public List<UltimateLevelOfDetailOptimizer> instancesOfUlodOptimizerInThisScene;
}
}

View File

@@ -0,0 +1,112 @@
using System;
using System.Xml;
using Cpp2IlInjected;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005ED RID: 1517
[Token(Token = "0x20005ED")]
public class RuntimeScanDemo : MonoBehaviour
{
// Token: 0x06002FC7 RID: 12231 RVA: 0x0006596C File Offset: 0x00063B6C
[Token(Token = "0x6002FC7")]
[Address(RVA = "0x4305D0", Offset = "0x42F3D0", VA = "0x1804305D0")]
private void Start()
{
UnityEvent onDoneScan = this.ulodOfScene.onDoneScan;
UnityAction unityAction = delegate
{
this.scanStatus.text = "Scan Done! Showing LOD Demo";
this.cameraAnimator.SetBool("runLoop", true);
this.buttonObj.SetActive(true);
};
onDoneScan.AddListener(unityAction);
UnityEvent onUndoScan = this.ulodOfScene.onUndoScan;
UnityAction unityAction2 = delegate
{
this.scanStatus.text = "No Scan Performed Yet";
Animator animator = this.cameraAnimator;
int num = 0;
animator.SetBool("runLoop", num != 0);
this.buttonObj.SetActive(true);
};
onUndoScan.AddListener(unityAction2);
}
// Token: 0x06002FC8 RID: 12232 RVA: 0x000659C0 File Offset: 0x00063BC0
[Token(Token = "0x6002FC8")]
[Address(RVA = "0x4307E0", Offset = "0x42F5E0", VA = "0x1804307E0")]
private void Update()
{
if (this.ulodOfScene.isMeshesCurrentScannedAndLodsWorkingInThisComponent())
{
this.buttonText.text = "Undo Current Scan And Delete Generated LODs";
}
if (!this.ulodOfScene.isMeshesCurrentScannedAndLodsWorkingInThisComponent())
{
bool dtdValidation = ((IDtdParserAdapterWithValidation)this.buttonText).DtdValidation;
return;
}
}
// Token: 0x06002FC9 RID: 12233 RVA: 0x00065A0C File Offset: 0x00063C0C
[Token(Token = "0x6002FC9")]
[Address(RVA = "0x4304C0", Offset = "0x42F2C0", VA = "0x1804304C0")]
public void StartUndoScan()
{
if (this.ulodOfScene.isMeshesCurrentScannedAndLodsWorkingInThisComponent())
{
this.scanStatus.text = "Undoing Scan...";
GameObject gameObject = this.buttonObj;
int num = 0;
gameObject.SetActive(num != 0);
this.ulodOfScene.UndoCurrentScanWorkingAndDeleteGeneratedMeshes(true, true);
return;
}
if (!this.ulodOfScene.isMeshesCurrentScannedAndLodsWorkingInThisComponent())
{
this.scanStatus.text = "Scanning...";
GameObject gameObject2 = this.buttonObj;
int num2 = 0;
gameObject2.SetActive(num2 != 0);
this.ulodOfScene.ScanAllMeshesAndGenerateLodsGroups();
return;
}
}
// Token: 0x06002FCA RID: 12234 RVA: 0x00065A98 File Offset: 0x00063C98
[Token(Token = "0x6002FCA")]
[Address(RVA = "0x3088F0", Offset = "0x3076F0", VA = "0x1803088F0")]
public RuntimeScanDemo()
{
}
// Token: 0x04003A0B RID: 14859
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A0B")]
public UltimateLevelOfDetail ulodOfScene;
// Token: 0x04003A0C RID: 14860
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A0C")]
public Text buttonText;
// Token: 0x04003A0D RID: 14861
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003A0D")]
public GameObject buttonObj;
// Token: 0x04003A0E RID: 14862
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4003A0E")]
public Text scanStatus;
// Token: 0x04003A0F RID: 14863
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4003A0F")]
public Animator cameraAnimator;
}
}

View File

@@ -0,0 +1,860 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
using UnityEngine.Events;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005F6 RID: 1526
[Token(Token = "0x20005F6")]
[ExecuteInEditMode]
[AddComponentMenu("MT Assets/Ultimate LOD System/Ultimate Level Of Detail")]
public class UltimateLevelOfDetail : MonoBehaviour
{
// Token: 0x17000394 RID: 916
// (get) Token: 0x06002FE6 RID: 12262 RVA: 0x00065D30 File Offset: 0x00063F30
// (set) Token: 0x06002FE7 RID: 12263 RVA: 0x00065D44 File Offset: 0x00063F44
[Token(Token = "0x17000394")]
public Transform customPivotToSimulateLods
{
[Token(Token = "0x6002FE6")]
[Address(RVA = "0x3EFFC0", Offset = "0x3EEDC0", VA = "0x1803EFFC0")]
get
{
return this._customPivotToSimulateLods;
}
[Token(Token = "0x6002FE7")]
[Address(RVA = "0x8C2A20", Offset = "0x8C1820", VA = "0x1808C2A20")]
set
{
int num = 0;
if (!(value == num))
{
Transform transform = base.gameObject.transform;
if (!value.IsChildOf(transform))
{
Debug.LogError("We were unable to define a custom pivot. Make sure that the GameObject that will be the new personalized pivot is the child of the desired ULOD component.");
return;
}
this._customPivotToSimulateLods = value;
}
throw new NullReferenceException();
}
}
// Token: 0x06002FE8 RID: 12264 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FE8")]
[Address(RVA = "0x8C24A0", Offset = "0x8C12A0", VA = "0x1808C24A0")]
private void ValidateAllParameters(bool isGoingToScan)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FE9 RID: 12265 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FE9")]
[Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00")]
private void CreateHierarchyOfFoldersIfNotExists()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FEA RID: 12266 RVA: 0x00065D8C File Offset: 0x00063F8C
[Token(Token = "0x6002FEA")]
[Address(RVA = "0x8C1840", Offset = "0x8C0640", VA = "0x1808C1840")]
private string SaveGeneratedLodInAssets(string lodNumber, long ticks, Mesh generatedLodMesh)
{
return "";
}
// Token: 0x06002FEB RID: 12267 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FEB")]
[Address(RVA = "0x8C0890", Offset = "0x8BF690", VA = "0x1808C0890")]
private Mesh GetGeneratedLodForThisMesh(Mesh originalMesh, float percentOfVertices, bool isSkinnedMesh)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FEC RID: 12268 RVA: 0x00065DA0 File Offset: 0x00063FA0
[Token(Token = "0x6002FEC")]
[Address(RVA = "0x8C0740", Offset = "0x8BF540", VA = "0x1808C0740")]
private Material[] GetCopyOfExistentArrayOfMaterials(Material[] sourceArray)
{
Material[] array;
int num;
int length;
Material material;
do
{
array = new Material[sourceArray.Length];
num = 0;
length = sourceArray.Length;
if (num >= length)
{
return array;
}
material = sourceArray[num];
}
while (material != 0 && length == 0);
array[0] = material;
num++;
return array;
}
// Token: 0x06002FED RID: 12269 RVA: 0x00065DEC File Offset: 0x00063FEC
[Token(Token = "0x6002FED")]
[Address(RVA = "0x8C1A60", Offset = "0x8C0860", VA = "0x1808C1A60")]
private void ScanForMeshesAndGenerateAllLodGroups_StartProcessing(bool showProgressBar)
{
int num;
UltimateLevelOfDetail.<ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__51 <ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__ = new UltimateLevelOfDetail.<ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__51(num);
num = 0;
<ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__.<>4__this = this;
Coroutine coroutine = base.StartCoroutine(<ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__);
}
// Token: 0x06002FEE RID: 12270 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FEE")]
[Address(RVA = "0x8C19F0", Offset = "0x8C07F0", VA = "0x1808C19F0")]
private IEnumerator ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing(bool showProgressBar)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FEF RID: 12271 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FEF")]
[Address(RVA = "0x8C1EB0", Offset = "0x8C0CB0", VA = "0x1808C1EB0")]
private void UndoAllMeshesScannedAndAllLodGroups(bool showProgressBar, bool deleteAllGeneratedMeshes, bool runMonoIl2CppGc, bool runUnityGc)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FF0 RID: 12272 RVA: 0x00065E18 File Offset: 0x00064018
[Token(Token = "0x6002FF0")]
[Address(RVA = "0x454840", Offset = "0x453640", VA = "0x180454840")]
private bool isLodsSimulationEnabledInThisSceneForEditorSceneViewMode()
{
return true;
}
// Token: 0x06002FF1 RID: 12273 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FF1")]
[Address(RVA = "0x2B4CB0", Offset = "0x2B3AB0", VA = "0x1802B4CB0")]
private Camera GetLastActiveSceneViewCamera()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FF2 RID: 12274 RVA: 0x00065E28 File Offset: 0x00064028
[Token(Token = "0x6002FF2")]
[Address(RVA = "0x8C0310", Offset = "0x8BF110", VA = "0x1808C0310")]
private void CullThisLodMeshOfRenderer(UltimateLevelOfDetail.ScannedMeshItem meshItem)
{
UltimateLevelOfDetail.CullingMode cullingMode = this.cullingMode;
if (cullingMode != UltimateLevelOfDetail.CullingMode.Disabled)
{
if (cullingMode == UltimateLevelOfDetail.CullingMode.CullingMeshes)
{
SkinnedMeshRenderer originalSkinnedMeshRenderer = meshItem.originalSkinnedMeshRenderer;
int num = 0;
if (originalSkinnedMeshRenderer != num)
{
Mesh sharedMesh = meshItem.originalSkinnedMeshRenderer.sharedMesh;
int num2 = 0;
if (sharedMesh != num2)
{
Mesh sharedMesh2 = meshItem.originalSkinnedMeshRenderer.sharedMesh;
meshItem.beforeCullingData_lastMeshOfThis = sharedMesh2;
SkinnedMeshRenderer originalSkinnedMeshRenderer2 = meshItem.originalSkinnedMeshRenderer;
int num3 = 0;
originalSkinnedMeshRenderer2.sharedMesh = num3;
}
}
MeshFilter originalMeshFilter = meshItem.originalMeshFilter;
int num4 = 0;
if (originalMeshFilter != num4)
{
Mesh sharedMesh3 = meshItem.originalMeshFilter.sharedMesh;
int num5 = 0;
if (sharedMesh3 != num5)
{
Mesh sharedMesh4 = meshItem.originalMeshFilter.sharedMesh;
meshItem.beforeCullingData_lastMeshOfThis = sharedMesh4;
MeshFilter originalMeshFilter2 = meshItem.originalMeshFilter;
int num6 = 0;
originalMeshFilter2.sharedMesh = num6;
}
}
}
if (this.cullingMode == UltimateLevelOfDetail.CullingMode.CullingRenderer)
{
SkinnedMeshRenderer originalSkinnedMeshRenderer3 = meshItem.originalSkinnedMeshRenderer;
int num7 = 0;
if (originalSkinnedMeshRenderer3 != num7)
{
bool forceRenderingOff = meshItem.originalSkinnedMeshRenderer.forceRenderingOff;
SkinnedMeshRenderer originalSkinnedMeshRenderer4 = meshItem.originalSkinnedMeshRenderer;
meshItem.beforeCullingData_isForcedToRenderizationOff = forceRenderingOff;
originalSkinnedMeshRenderer4.forceRenderingOff = true;
}
MeshRenderer originalMeshRenderer = meshItem.originalMeshRenderer;
int num8 = 0;
if (originalMeshRenderer != num8)
{
bool forceRenderingOff2 = meshItem.originalMeshRenderer.forceRenderingOff;
MeshRenderer originalMeshRenderer2 = meshItem.originalMeshRenderer;
meshItem.beforeCullingData_isForcedToRenderizationOff = forceRenderingOff2;
originalMeshRenderer2.forceRenderingOff = true;
}
}
}
}
// Token: 0x06002FF3 RID: 12275 RVA: 0x00065F84 File Offset: 0x00064184
[Token(Token = "0x6002FF3")]
[Address(RVA = "0x8C1C70", Offset = "0x8C0A70", VA = "0x1808C1C70")]
private void UncullThisLodMeshOfRenderer(UltimateLevelOfDetail.ScannedMeshItem meshItem)
{
UltimateLevelOfDetail.CullingMode cullingMode = this.cullingMode;
if (cullingMode != UltimateLevelOfDetail.CullingMode.Disabled)
{
if (cullingMode == UltimateLevelOfDetail.CullingMode.CullingMeshes)
{
SkinnedMeshRenderer originalSkinnedMeshRenderer = meshItem.originalSkinnedMeshRenderer;
int num = 0;
if (originalSkinnedMeshRenderer != num)
{
Mesh sharedMesh = meshItem.originalSkinnedMeshRenderer.sharedMesh;
int num2 = 0;
if (sharedMesh == num2)
{
SkinnedMeshRenderer originalSkinnedMeshRenderer2 = meshItem.originalSkinnedMeshRenderer;
Mesh beforeCullingData_lastMeshOfThis = meshItem.beforeCullingData_lastMeshOfThis;
originalSkinnedMeshRenderer2.sharedMesh = beforeCullingData_lastMeshOfThis;
}
}
MeshFilter originalMeshFilter = meshItem.originalMeshFilter;
int num3 = 0;
if (originalMeshFilter != num3)
{
Mesh sharedMesh2 = meshItem.originalMeshFilter.sharedMesh;
int num4 = 0;
if (sharedMesh2 == num4)
{
MeshFilter originalMeshFilter2 = meshItem.originalMeshFilter;
Mesh beforeCullingData_lastMeshOfThis2 = meshItem.beforeCullingData_lastMeshOfThis;
originalMeshFilter2.sharedMesh = beforeCullingData_lastMeshOfThis2;
}
}
}
if (this.cullingMode == UltimateLevelOfDetail.CullingMode.CullingRenderer)
{
SkinnedMeshRenderer originalSkinnedMeshRenderer3 = meshItem.originalSkinnedMeshRenderer;
int num5 = 0;
if (originalSkinnedMeshRenderer3 != num5)
{
SkinnedMeshRenderer originalSkinnedMeshRenderer4 = meshItem.originalSkinnedMeshRenderer;
bool beforeCullingData_isForcedToRenderizationOff = meshItem.beforeCullingData_isForcedToRenderizationOff;
originalSkinnedMeshRenderer4.forceRenderingOff = beforeCullingData_isForcedToRenderizationOff;
}
MeshRenderer originalMeshRenderer = meshItem.originalMeshRenderer;
int num6 = 0;
if (originalMeshRenderer != num6)
{
MeshRenderer originalMeshRenderer2 = meshItem.originalMeshRenderer;
bool beforeCullingData_isForcedToRenderizationOff2 = meshItem.beforeCullingData_isForcedToRenderizationOff;
originalMeshRenderer2.forceRenderingOff = beforeCullingData_isForcedToRenderizationOff2;
}
}
}
}
// Token: 0x06002FF4 RID: 12276 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FF4")]
[Address(RVA = "0x8BF280", Offset = "0x8BE080", VA = "0x1808BF280")]
private void ChangeLodMeshAndMaterialsOfRenderer(UltimateLevelOfDetail.ScannedMeshItem meshItem, int lodLevel)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FF5 RID: 12277 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FF5")]
[Address(RVA = "0x8BEE60", Offset = "0x8BDC60", VA = "0x1808BEE60")]
private void CalculateCorrectLodForDistanceBeforeChange(float distance)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FF6 RID: 12278 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FF6")]
[Address(RVA = "0x8C0F90", Offset = "0x8BFD90", VA = "0x1808C0F90")]
public void OnRenderObject()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FF7 RID: 12279 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FF7")]
[Address(RVA = "0x8BEC10", Offset = "0x8BDA10", VA = "0x1808BEC10")]
public void Awake()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FF8 RID: 12280 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FF8")]
[Address(RVA = "0x8C0F20", Offset = "0x8BFD20", VA = "0x1808C0F20")]
private IEnumerator OnRenderObject_HookEmulationForHDRP()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FF9 RID: 12281 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FF9")]
[Address(RVA = "0x8C0DD0", Offset = "0x8BFBD0", VA = "0x1808C0DD0")]
public void OnEnable()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FFA RID: 12282 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FFA")]
[Address(RVA = "0x8C0840", Offset = "0x8BF640", VA = "0x1808C0840")]
public int GetCurrentLodLevel()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FFB RID: 12283 RVA: 0x000660A8 File Offset: 0x000642A8
[Token(Token = "0x6002FFB")]
[Address(RVA = "0x468160", Offset = "0x466F60", VA = "0x180468160")]
public float GetCurrentCameraDistance()
{
return this.currentDistanceFromMainCamera;
}
// Token: 0x06002FFC RID: 12284 RVA: 0x000660BC File Offset: 0x000642BC
[Token(Token = "0x6002FFC")]
[Address(RVA = "0x38DB10", Offset = "0x38C910", VA = "0x18038DB10")]
public float GetCurrentRealCameraDistance()
{
return this.currentRealDistanceFromMainCamera;
}
// Token: 0x06002FFD RID: 12285 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FFD")]
[Address(RVA = "0x8C0D80", Offset = "0x8BFB80", VA = "0x1808C0D80")]
public int GetNumberOfLodsGenerated()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002FFE RID: 12286 RVA: 0x000660D0 File Offset: 0x000642D0
[Token(Token = "0x6002FFE")]
[Address(RVA = "0x8C2A00", Offset = "0x8C1800", VA = "0x1808C2A00")]
public bool isScannedMeshesCurrentCulled()
{
return this.currentLodAccordingToDistance == 9;
}
// Token: 0x06002FFF RID: 12287 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002FFF")]
[Address(RVA = "0x8C0A70", Offset = "0x8BF870", VA = "0x1808C0A70")]
public UltimateLevelOfDetailMeshes[] GetListOfAllMeshesScanned()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003000 RID: 12288 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003000")]
[Address(RVA = "0x8C05C0", Offset = "0x8BF3C0", VA = "0x1808C05C0")]
public void ForceShowLod(bool force, int level)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003001 RID: 12289 RVA: 0x000660E8 File Offset: 0x000642E8
[Token(Token = "0x6003001")]
[Address(RVA = "0x8C2A10", Offset = "0x8C1810", VA = "0x1808C2A10")]
public bool isThisComponentForcedToShowLod()
{
return this.forcedToShowOnlyALodIndependentOfDistance != -1;
}
// Token: 0x06003002 RID: 12290 RVA: 0x00066104 File Offset: 0x00064304
[Token(Token = "0x6003002")]
[Address(RVA = "0x4BFCF0", Offset = "0x4BEAF0", VA = "0x1804BFCF0")]
public void ForceDisableLodChangesInThisComponent(bool force)
{
this.forcedToDisableLodsOfThisComponent = force;
}
// Token: 0x06003003 RID: 12291 RVA: 0x00066118 File Offset: 0x00064318
[Token(Token = "0x6003003")]
[Address(RVA = "0x4BFCE0", Offset = "0x4BEAE0", VA = "0x1804BFCE0")]
public bool isThisComponentForcedToDisableLodChanges()
{
return this.forcedToDisableLodsOfThisComponent;
}
// Token: 0x06003004 RID: 12292 RVA: 0x0006612C File Offset: 0x0006432C
[Token(Token = "0x6003004")]
[Address(RVA = "0x8C06F0", Offset = "0x8BF4F0", VA = "0x1808C06F0")]
public void ForceThisComponentToUpdateLodsRender()
{
float num = UnityEngine.Random.Range(0.1f, 1f);
this.currentLodAccordingToDistance = (int)((ulong)4294967295L);
this.lastDistanceFromMainCamera = num;
this.OnRenderObject();
}
// Token: 0x06003005 RID: 12293 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003005")]
[Address(RVA = "0x8C29B0", Offset = "0x8C17B0", VA = "0x1808C29B0")]
public bool isMeshesCurrentScannedAndLodsWorkingInThisComponent()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003006 RID: 12294 RVA: 0x00066168 File Offset: 0x00064368
[Token(Token = "0x6003006")]
[Address(RVA = "0x8C1870", Offset = "0x8C0670", VA = "0x1808C1870")]
public void ScanAllMeshesAndGenerateLodsGroups()
{
List<UltimateLevelOfDetail.ScannedMeshItem> list = this.currentScannedMeshesList;
if ((ulong)1L == 0UL)
{
List<UltimateLevelOfDetail.ScannedMeshItem> list2 = this.currentScannedMeshesList;
}
int num;
UltimateLevelOfDetail.<ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__51 <ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__ = new UltimateLevelOfDetail.<ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__51(num);
num = 0;
<ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__.<>4__this = this;
Coroutine coroutine = base.StartCoroutine(<ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing>d__);
}
// Token: 0x06003007 RID: 12295 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003007")]
[Address(RVA = "0x8C2350", Offset = "0x8C1150", VA = "0x1808C2350")]
public void UndoCurrentScanWorkingAndDeleteGeneratedMeshes(bool runMonoIl2CppGc, bool runUnityGc)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003008 RID: 12296 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003008")]
[Address(RVA = "0x8C0C00", Offset = "0x8BFA00", VA = "0x1808C0C00")]
public UltimateLevelOfDetail[] GetListOfAllUlodsInThisScene()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003009 RID: 12297 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003009")]
[Address(RVA = "0x8C0CB0", Offset = "0x8BFAB0", VA = "0x1808C0CB0")]
public UltimateLevelOfDetailOptimizer[] GetListOfAllUlodsOptimizerInThisScene()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600300A RID: 12298 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600300A")]
[Address(RVA = "0x8C1AE0", Offset = "0x8C08E0", VA = "0x1808C1AE0")]
public void SetNewCustomCameraForThisAndAllUlodsInThisScene(Camera newCustomCamera)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600300B RID: 12299 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600300B")]
[Address(RVA = "0x8BF520", Offset = "0x8BE320", VA = "0x1808BF520")]
public void ConvertThisToDefaultUnityLods()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600300C RID: 12300 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600300C")]
[Address(RVA = "0x8C27D0", Offset = "0x8C15D0", VA = "0x1808C27D0")]
public UltimateLevelOfDetail()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003A1D RID: 14877
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A1D")]
private WaitForEndOfFrame WAIT_FOR_END_OF_FRAME;
// Token: 0x04003A1E RID: 14878
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A1E")]
private Camera cacheOfMainCamera;
// Token: 0x04003A1F RID: 14879
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003A1F")]
private GameObject cacheOfUlodData;
// Token: 0x04003A20 RID: 14880
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4003A20")]
private RuntimeInstancesDetector cacheOfUlodDataRuntimeInstancesDetector;
// Token: 0x04003A21 RID: 14881
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4003A21")]
private float lastDistanceFromMainCamera;
// Token: 0x04003A22 RID: 14882
[FieldOffset(Offset = "0x3C")]
[Token(Token = "0x4003A22")]
private int currentLodAccordingToDistance;
// Token: 0x04003A23 RID: 14883
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4003A23")]
private float currentDistanceFromMainCamera;
// Token: 0x04003A24 RID: 14884
[FieldOffset(Offset = "0x44")]
[Token(Token = "0x4003A24")]
private float currentRealDistanceFromMainCamera;
// Token: 0x04003A25 RID: 14885
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4003A25")]
private bool forcedToDisableLodsOfThisComponent;
// Token: 0x04003A26 RID: 14886
[FieldOffset(Offset = "0x4C")]
[Token(Token = "0x4003A26")]
private int forcedToShowOnlyALodIndependentOfDistance;
// Token: 0x04003A27 RID: 14887
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4003A27")]
[HideInInspector]
public List<UltimateLevelOfDetail.ScannedMeshItem> currentScannedMeshesList;
// Token: 0x04003A28 RID: 14888
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4003A28")]
[HideInInspector]
public UltimateLevelOfDetail.ScanMeshesMode modeOfMeshesScanning;
// Token: 0x04003A29 RID: 14889
[FieldOffset(Offset = "0x5C")]
[Token(Token = "0x4003A29")]
[HideInInspector]
public bool scanInactiveGameObjects;
// Token: 0x04003A2A RID: 14890
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4003A2A")]
[HideInInspector]
public List<GameObject> gameObjectsToIgnore;
// Token: 0x04003A2B RID: 14891
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x4003A2B")]
[HideInInspector]
public int levelsOfDetailToGenerate;
// Token: 0x04003A2C RID: 14892
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x4003A2C")]
[HideInInspector]
public float[] percentOfVerticesForEachLod;
// Token: 0x04003A2D RID: 14893
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x4003A2D")]
[HideInInspector]
public bool saveGeneratedLodsInAssets;
// Token: 0x04003A2E RID: 14894
[FieldOffset(Offset = "0x79")]
[Token(Token = "0x4003A2E")]
[HideInInspector]
public bool skinnedAnimsCompatibilityMode;
// Token: 0x04003A2F RID: 14895
[FieldOffset(Offset = "0x7A")]
[Token(Token = "0x4003A2F")]
[HideInInspector]
public bool preventArtifacts;
// Token: 0x04003A30 RID: 14896
[FieldOffset(Offset = "0x7B")]
[Token(Token = "0x4003A30")]
[HideInInspector]
public bool optimizeResultingMeshes;
// Token: 0x04003A31 RID: 14897
[FieldOffset(Offset = "0x7C")]
[Token(Token = "0x4003A31")]
[HideInInspector]
public bool enableLightmapsSupport;
// Token: 0x04003A32 RID: 14898
[FieldOffset(Offset = "0x7D")]
[Token(Token = "0x4003A32")]
[HideInInspector]
public bool enableMaterialsChanges;
// Token: 0x04003A33 RID: 14899
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x4003A33")]
[HideInInspector]
public UltimateLevelOfDetail.ForceOfSimplification forceOfSimplification;
// Token: 0x04003A34 RID: 14900
[FieldOffset(Offset = "0x84")]
[Token(Token = "0x4003A34")]
[HideInInspector]
public UltimateLevelOfDetail.CullingMode cullingMode;
// Token: 0x04003A35 RID: 14901
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x4003A35")]
[SerializeField]
[HideInInspector]
private Transform _customPivotToSimulateLods;
// Token: 0x04003A36 RID: 14902
[FieldOffset(Offset = "0x90")]
[Token(Token = "0x4003A36")]
[HideInInspector]
public UltimateLevelOfDetail.CameraDetectionMode cameraDetectionMode;
// Token: 0x04003A37 RID: 14903
[FieldOffset(Offset = "0x94")]
[Token(Token = "0x4003A37")]
[HideInInspector]
public bool useCacheForMainCameraInDetection;
// Token: 0x04003A38 RID: 14904
[FieldOffset(Offset = "0x98")]
[Token(Token = "0x4003A38")]
[HideInInspector]
public Camera customCameraForSimulationOfLods;
// Token: 0x04003A39 RID: 14905
[FieldOffset(Offset = "0xA0")]
[Token(Token = "0x4003A39")]
[HideInInspector]
public float[] minDistanceOfViewForEachLod;
// Token: 0x04003A3A RID: 14906
[FieldOffset(Offset = "0xA8")]
[Token(Token = "0x4003A3A")]
[HideInInspector]
public float minDistanceOfViewForCull;
// Token: 0x04003A3B RID: 14907
[FieldOffset(Offset = "0xB0")]
[Token(Token = "0x4003A3B")]
public UnityEvent onDoneScan;
// Token: 0x04003A3C RID: 14908
[FieldOffset(Offset = "0xB8")]
[Token(Token = "0x4003A3C")]
public UnityEvent onUndoScan;
// Token: 0x04003A3D RID: 14909
[FieldOffset(Offset = "0xC0")]
[Token(Token = "0x4003A3D")]
[HideInInspector]
public bool forceChangeLodsOfSkinnedInEditor;
// Token: 0x04003A3E RID: 14910
[FieldOffset(Offset = "0xC1")]
[Token(Token = "0x4003A3E")]
[HideInInspector]
public bool drawGizmoOnThisPivot;
// Token: 0x04003A3F RID: 14911
[FieldOffset(Offset = "0xC4")]
[Token(Token = "0x4003A3F")]
[HideInInspector]
public Color colorOfGizmo;
// Token: 0x04003A40 RID: 14912
[FieldOffset(Offset = "0xD4")]
[Token(Token = "0x4003A40")]
[HideInInspector]
public float sizeOfGizmo;
// Token: 0x04003A41 RID: 14913
[FieldOffset(Offset = "0xD8")]
[Token(Token = "0x4003A41")]
[HideInInspector]
public bool forceShowHiddenSettings;
// Token: 0x020005F7 RID: 1527
[Token(Token = "0x20005F7")]
public enum ScanMeshesMode
{
// Token: 0x04003A43 RID: 14915
[Token(Token = "0x4003A43")]
ScanInChildrenGameObjectsOnly,
// Token: 0x04003A44 RID: 14916
[Token(Token = "0x4003A44")]
ScanInThisGameObjectOnly
}
// Token: 0x020005F8 RID: 1528
[Token(Token = "0x20005F8")]
public enum ForceOfSimplification
{
// Token: 0x04003A46 RID: 14918
[Token(Token = "0x4003A46")]
Normal,
// Token: 0x04003A47 RID: 14919
[Token(Token = "0x4003A47")]
Strong,
// Token: 0x04003A48 RID: 14920
[Token(Token = "0x4003A48")]
VeryStrong,
// Token: 0x04003A49 RID: 14921
[Token(Token = "0x4003A49")]
ExtremelyStrong,
// Token: 0x04003A4A RID: 14922
[Token(Token = "0x4003A4A")]
Destroyer
}
// Token: 0x020005F9 RID: 1529
[Token(Token = "0x20005F9")]
public enum CullingMode
{
// Token: 0x04003A4C RID: 14924
[Token(Token = "0x4003A4C")]
Disabled,
// Token: 0x04003A4D RID: 14925
[Token(Token = "0x4003A4D")]
CullingMeshes,
// Token: 0x04003A4E RID: 14926
[Token(Token = "0x4003A4E")]
CullingRenderer
}
// Token: 0x020005FA RID: 1530
[Token(Token = "0x20005FA")]
public enum CameraDetectionMode
{
// Token: 0x04003A50 RID: 14928
[Token(Token = "0x4003A50")]
CurrentCamera,
// Token: 0x04003A51 RID: 14929
[Token(Token = "0x4003A51")]
MainCamera,
// Token: 0x04003A52 RID: 14930
[Token(Token = "0x4003A52")]
CustomCamera
}
// Token: 0x020005FB RID: 1531
[Token(Token = "0x20005FB")]
[Serializable]
public class ScannedMeshItem
{
// Token: 0x0600300D RID: 12301 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600300D")]
[Address(RVA = "0x132EB60", Offset = "0x132D960", VA = "0x18132EB60")]
public void InitializeAllMeshLodsMaterialsArray()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600300E RID: 12302 RVA: 0x000661CC File Offset: 0x000643CC
[Token(Token = "0x600300E")]
[Address(RVA = "0x132ECB0", Offset = "0x132DAB0", VA = "0x18132ECB0")]
public ScannedMeshItem()
{
Mesh[] array = new Mesh[9];
this.allMeshLods = array;
string[] array2 = new string[9];
this.allMeshLodsPaths = array2;
UltimateLevelOfDetail.ScannedMeshItem.MeshMaterials[] array3 = new UltimateLevelOfDetail.ScannedMeshItem.MeshMaterials[9];
this.allMeshLodsMaterials = array3;
base..ctor();
}
// Token: 0x04003A53 RID: 14931
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003A53")]
public GameObject originalGameObject;
// Token: 0x04003A54 RID: 14932
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A54")]
public SkinnedMeshRenderer originalSkinnedMeshRenderer;
// Token: 0x04003A55 RID: 14933
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A55")]
public MeshFilter originalMeshFilter;
// Token: 0x04003A56 RID: 14934
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003A56")]
public MeshRenderer originalMeshRenderer;
// Token: 0x04003A57 RID: 14935
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4003A57")]
public Mesh[] allMeshLods;
// Token: 0x04003A58 RID: 14936
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4003A58")]
public string[] allMeshLodsPaths;
// Token: 0x04003A59 RID: 14937
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4003A59")]
public bool canChangeMaterialsOnThisMeshLods;
// Token: 0x04003A5A RID: 14938
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4003A5A")]
public UltimateLevelOfDetail.ScannedMeshItem.MeshMaterials[] allMeshLodsMaterials;
// Token: 0x04003A5B RID: 14939
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4003A5B")]
public UltimateLevelOfDetailMeshes originalMeshLodsManager;
// Token: 0x04003A5C RID: 14940
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4003A5C")]
public Mesh beforeCullingData_lastMeshOfThis;
// Token: 0x04003A5D RID: 14941
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4003A5D")]
public bool beforeCullingData_isForcedToRenderizationOff;
// Token: 0x020005FC RID: 1532
[Token(Token = "0x20005FC")]
[Serializable]
public class MeshMaterials
{
// Token: 0x0600300F RID: 12303 RVA: 0x0003883F File Offset: 0x00036A3F
[Token(Token = "0x600300F")]
[Address(RVA = "0x132D280", Offset = "0x132C080", VA = "0x18132D280")]
public MeshMaterials()
{
}
// Token: 0x04003A5E RID: 14942
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003A5E")]
public Material[] materialArray;
}
}
}
}

View File

@@ -0,0 +1,80 @@
using System;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x020005FF RID: 1535
[Token(Token = "0x20005FF")]
[AddComponentMenu("")]
public class UltimateLevelOfDetailGlobal : MonoBehaviour
{
// Token: 0x0600301E RID: 12318 RVA: 0x000662BC File Offset: 0x000644BC
[Token(Token = "0x600301E")]
[Address(RVA = "0x8BE270", Offset = "0x8BD070", VA = "0x1808BE270")]
public static bool isGlobalULodSystemEnabled()
{
return UltimateLevelOfDetailGlobal.enableGlobalUlodSystem;
}
// Token: 0x0600301F RID: 12319 RVA: 0x000662D0 File Offset: 0x000644D0
[Token(Token = "0x600301F")]
[Address(RVA = "0x8BDF40", Offset = "0x8BCD40", VA = "0x1808BDF40")]
public static void EnableGlobalULodSystem(bool enable)
{
UltimateLevelOfDetailGlobal.enableGlobalUlodSystem = enable;
}
// Token: 0x06003020 RID: 12320 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003020")]
[Address(RVA = "0x8BE190", Offset = "0x8BCF90", VA = "0x1808BE190")]
public static void SetGlobalLodDistanceMultiplier(float multiplier)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003021 RID: 12321 RVA: 0x000662E4 File Offset: 0x000644E4
[Token(Token = "0x6003021")]
[Address(RVA = "0x8BDFA0", Offset = "0x8BCDA0", VA = "0x1808BDFA0")]
public static float GetGlobalLodDistanceMultiplier()
{
return UltimateLevelOfDetailGlobal.lodDistanceMultiplier;
}
// Token: 0x06003022 RID: 12322 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003022")]
[Address(RVA = "0x8BE000", Offset = "0x8BCE00", VA = "0x1808BE000")]
public static Mesh GetSimplifiedVersionOfThisMesh(Mesh meshToSimplify, bool isSkinnedMesh, bool skinnedAnimsCompatibilityMode, bool simplificationDestroyerMode, bool preventArtifacts, float percentOfVerticesOfSimplifyiedVersion)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003023 RID: 12323 RVA: 0x000662F8 File Offset: 0x000644F8
[Token(Token = "0x6003023")]
[Address(RVA = "0x3088F0", Offset = "0x3076F0", VA = "0x1803088F0")]
public UltimateLevelOfDetailGlobal()
{
}
// Token: 0x06003024 RID: 12324 RVA: 0x000020D3 File Offset: 0x000002D3
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x6003024")]
[Address(RVA = "0x8BE200", Offset = "0x8BD000", VA = "0x1808BE200")]
static UltimateLevelOfDetailGlobal()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04003A71 RID: 14961
[Token(Token = "0x4003A71")]
private static bool enableGlobalUlodSystem;
// Token: 0x04003A72 RID: 14962
[Token(Token = "0x4003A72")]
private static float lodDistanceMultiplier;
// Token: 0x04003A73 RID: 14963
[Token(Token = "0x4003A73")]
public static Camera currentCameraThatIsOnTopOfScreenInThisScene;
}
}

View File

@@ -0,0 +1,87 @@
using System;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x02000600 RID: 1536
[Token(Token = "0x2000600")]
[AddComponentMenu("")]
public class UltimateLevelOfDetailMeshes : MonoBehaviour
{
// Token: 0x06003025 RID: 12325 RVA: 0x0006630C File Offset: 0x0006450C
[Token(Token = "0x6003025")]
[Address(RVA = "0x2B4380", Offset = "0x2B3180", VA = "0x1802B4380")]
public UltimateLevelOfDetail GetResponsibleUlodComponent()
{
return this.responsibleUlod;
}
// Token: 0x06003026 RID: 12326 RVA: 0x00066320 File Offset: 0x00064520
[Token(Token = "0x6003026")]
[Address(RVA = "0x8BE530", Offset = "0x8BD330", VA = "0x1808BE530")]
public int GetQuantityOfLods()
{
return this.responsibleUlod.levelsOfDetailToGenerate;
}
// Token: 0x06003027 RID: 12327 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003027")]
[Address(RVA = "0x8BE6D0", Offset = "0x8BD4D0", VA = "0x1808BE6D0")]
public void SetMeshOfThisLodGroup(int level, Mesh newMesh)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003028 RID: 12328 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6003028")]
[Address(RVA = "0x8BE430", Offset = "0x8BD230", VA = "0x1808BE430")]
public Mesh GetMeshOfThisLodGroup(int level)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003029 RID: 12329 RVA: 0x00066340 File Offset: 0x00064540
[Token(Token = "0x6003029")]
[Address(RVA = "0x8BE880", Offset = "0x8BD680", VA = "0x1808BE880")]
public bool isMaterialChangesEnabledForThisMesh()
{
return this.responsibleUlod.enableMaterialsChanges;
}
// Token: 0x0600302A RID: 12330 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600302A")]
[Address(RVA = "0x8BE550", Offset = "0x8BD350", VA = "0x1808BE550")]
public void SetMaterialArrayOfThisLodGroup(int level, Material[] newMaterialArray)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600302B RID: 12331 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600302B")]
[Address(RVA = "0x8BE2D0", Offset = "0x8BD0D0", VA = "0x1808BE2D0")]
public Material[] GetMaterialArrayOfThisLodGroup(int level)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600302C RID: 12332 RVA: 0x00066364 File Offset: 0x00064564
[Token(Token = "0x600302C")]
[Address(RVA = "0x76BCA0", Offset = "0x76AAA0", VA = "0x18076BCA0")]
public UltimateLevelOfDetailMeshes()
{
}
// Token: 0x04003A74 RID: 14964
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A74")]
[HideInInspector]
public UltimateLevelOfDetail responsibleUlod;
// Token: 0x04003A75 RID: 14965
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A75")]
[HideInInspector]
public int idOfOriginalMeshItemOfThisInResponsibleUlod = (int)((ulong)4294967295L);
}
}

View File

@@ -0,0 +1,97 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x02000601 RID: 1537
[Token(Token = "0x2000601")]
[AddComponentMenu("MT Assets/Ultimate LOD System/Ultimate Level Of Detail Optimizer")]
public class UltimateLevelOfDetailOptimizer : MonoBehaviour
{
// Token: 0x0600302D RID: 12333 RVA: 0x00066388 File Offset: 0x00064588
[Token(Token = "0x600302D")]
[Address(RVA = "0x8BE8A0", Offset = "0x8BD6A0", VA = "0x1808BE8A0")]
public void Awake()
{
int num;
UltimateLevelOfDetailOptimizer.<UlodOptimizationLoop>d__9 <UlodOptimizationLoop>d__ = new UltimateLevelOfDetailOptimizer.<UlodOptimizationLoop>d__9(num);
num = 0;
<UlodOptimizationLoop>d__.<>4__this = this;
Coroutine coroutine = base.StartCoroutine(<UlodOptimizationLoop>d__);
}
// Token: 0x0600302E RID: 12334 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600302E")]
[Address(RVA = "0x8BEAB0", Offset = "0x8BD8B0", VA = "0x1808BEAB0")]
private bool isThisUlodPresentOnUlodsToBeIgnored(UltimateLevelOfDetail ulod)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600302F RID: 12335 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600302F")]
[Address(RVA = "0x8BE920", Offset = "0x8BD720", VA = "0x1808BE920")]
private IEnumerator UlodOptimizationLoop()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06003030 RID: 12336 RVA: 0x000663B4 File Offset: 0x000645B4
[Token(Token = "0x6003030")]
[Address(RVA = "0x8BE990", Offset = "0x8BD790", VA = "0x1808BE990")]
public UltimateLevelOfDetailOptimizer()
{
WaitForSecondsRealtime waitForSecondsRealtime = new WaitForSecondsRealtime(0.2f);
this.DELAY_BETWEEN_OPTIMIZATION_UPDATES = waitForSecondsRealtime;
WaitForSecondsRealtime waitForSecondsRealtime2 = new WaitForSecondsRealtime(0.05f);
this.DELAY_BETWEEN_GAMEOBJECTS_STATE_CHANGE = waitForSecondsRealtime2;
this.ADITIONAL_CULLING_DISTANCE_OFFSET = 10f;
int[] array = new int[0];
this.instructionsToMakeOnUlods = array;
this.enableOptimizationTasks = true;
List<UltimateLevelOfDetail> list = new List();
this.ulodsToBeIgnored = list;
base..ctor();
}
// Token: 0x04003A76 RID: 14966
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A76")]
private WaitForSecondsRealtime DELAY_BETWEEN_OPTIMIZATION_UPDATES;
// Token: 0x04003A77 RID: 14967
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003A77")]
private WaitForSecondsRealtime DELAY_BETWEEN_GAMEOBJECTS_STATE_CHANGE;
// Token: 0x04003A78 RID: 14968
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003A78")]
private float ADITIONAL_CULLING_DISTANCE_OFFSET;
// Token: 0x04003A79 RID: 14969
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4003A79")]
private RuntimeInstancesDetector runtimeInstancesDetector;
// Token: 0x04003A7A RID: 14970
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4003A7A")]
private int[] instructionsToMakeOnUlods;
// Token: 0x04003A7B RID: 14971
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4003A7B")]
[HideInInspector]
public bool enableOptimizationTasks;
// Token: 0x04003A7C RID: 14972
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4003A7C")]
[HideInInspector]
public List<UltimateLevelOfDetail> ulodsToBeIgnored;
}
}

View File

@@ -0,0 +1,25 @@
using System;
using Cpp2IlInjected;
using UnityEngine;
namespace MTAssets.UltimateLODSystem
{
// Token: 0x02000603 RID: 1539
[Token(Token = "0x2000603")]
[AddComponentMenu("MT Assets/Ultimate LOD System/Ultimate Level Of Detail Pivot")]
public class UltimateLevelOfDetailPivot : MonoBehaviour
{
// Token: 0x06003038 RID: 12344 RVA: 0x00066470 File Offset: 0x00064670
[Token(Token = "0x6003038")]
[Address(RVA = "0x3088F0", Offset = "0x3076F0", VA = "0x1803088F0")]
public UltimateLevelOfDetailPivot()
{
}
// Token: 0x04003A82 RID: 14978
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003A82")]
[HideInInspector]
public UltimateLevelOfDetail targetUlodToChangePivot;
}
}