810 lines
27 KiB
C#
810 lines
27 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using Cpp2IlInjected;
|
|
using UnityEngine;
|
|
using UnityEngine.Events;
|
|
|
|
namespace MTAssets.UltimateLODSystem
|
|
{
|
|
// Token: 0x0200064E RID: 1614
|
|
[Token(Token = "0x200064E")]
|
|
[ExecuteInEditMode]
|
|
[AddComponentMenu("MT Assets/Ultimate LOD System/Ultimate Level Of Detail")]
|
|
public class UltimateLevelOfDetail : MonoBehaviour
|
|
{
|
|
// Token: 0x170003B9 RID: 953
|
|
// (get) Token: 0x060032AF RID: 12975 RVA: 0x0006D000 File Offset: 0x0006B200
|
|
// (set) Token: 0x060032B0 RID: 12976 RVA: 0x0006D014 File Offset: 0x0006B214
|
|
[Token(Token = "0x170003B9")]
|
|
public Transform customPivotToSimulateLods
|
|
{
|
|
[Token(Token = "0x60032AF")]
|
|
[Address(RVA = "0x3763E0", Offset = "0x3753E0", VA = "0x1803763E0")]
|
|
get
|
|
{
|
|
return this._customPivotToSimulateLods;
|
|
}
|
|
[Token(Token = "0x60032B0")]
|
|
[Address(RVA = "0xCCC710", Offset = "0xCCB710", VA = "0x180CCC710")]
|
|
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: 0x060032B1 RID: 12977 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032B1")]
|
|
[Address(RVA = "0xCCC190", Offset = "0xCCB190", VA = "0x180CCC190")]
|
|
private void ValidateAllParameters(bool isGoingToScan)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032B2 RID: 12978 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032B2")]
|
|
[Address(RVA = "0x29E8B0", Offset = "0x29D8B0", VA = "0x18029E8B0")]
|
|
private void CreateHierarchyOfFoldersIfNotExists()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032B3 RID: 12979 RVA: 0x0006D05C File Offset: 0x0006B25C
|
|
[Token(Token = "0x60032B3")]
|
|
[Address(RVA = "0xCCB530", Offset = "0xCCA530", VA = "0x180CCB530")]
|
|
private string SaveGeneratedLodInAssets(string lodNumber, long ticks, Mesh generatedLodMesh)
|
|
{
|
|
return "";
|
|
}
|
|
|
|
// Token: 0x060032B4 RID: 12980 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032B4")]
|
|
[Address(RVA = "0xCCA580", Offset = "0xCC9580", VA = "0x180CCA580")]
|
|
private Mesh GetGeneratedLodForThisMesh(Mesh originalMesh, float percentOfVertices, bool isSkinnedMesh)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032B5 RID: 12981 RVA: 0x0006D070 File Offset: 0x0006B270
|
|
[Token(Token = "0x60032B5")]
|
|
[Address(RVA = "0xCCA430", Offset = "0xCC9430", VA = "0x180CCA430")]
|
|
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: 0x060032B6 RID: 12982 RVA: 0x0006D0BC File Offset: 0x0006B2BC
|
|
[Token(Token = "0x60032B6")]
|
|
[Address(RVA = "0xCCB750", Offset = "0xCCA750", VA = "0x180CCB750")]
|
|
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: 0x060032B7 RID: 12983 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032B7")]
|
|
[Address(RVA = "0xCCB6E0", Offset = "0xCCA6E0", VA = "0x180CCB6E0")]
|
|
private IEnumerator ScanForMeshesAndGenerateAllLodGroups_AsyncProcessing(bool showProgressBar)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032B8 RID: 12984 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032B8")]
|
|
[Address(RVA = "0xCCBBA0", Offset = "0xCCABA0", VA = "0x180CCBBA0")]
|
|
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: 0x060032B9 RID: 12985 RVA: 0x0006D0E8 File Offset: 0x0006B2E8
|
|
[Token(Token = "0x60032B9")]
|
|
[Address(RVA = "0x4990D0", Offset = "0x4980D0", VA = "0x1804990D0")]
|
|
private bool isLodsSimulationEnabledInThisSceneForEditorSceneViewMode()
|
|
{
|
|
return true;
|
|
}
|
|
|
|
// Token: 0x060032BA RID: 12986 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032BA")]
|
|
[Address(RVA = "0x2FF2E0", Offset = "0x2FE2E0", VA = "0x1802FF2E0")]
|
|
private Camera GetLastActiveSceneViewCamera()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032BB RID: 12987 RVA: 0x0006D0F8 File Offset: 0x0006B2F8
|
|
[Token(Token = "0x60032BB")]
|
|
[Address(RVA = "0xCCA000", Offset = "0xCC9000", VA = "0x180CCA000")]
|
|
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: 0x060032BC RID: 12988 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032BC")]
|
|
[Address(RVA = "0xCCB960", Offset = "0xCCA960", VA = "0x180CCB960")]
|
|
private void UncullThisLodMeshOfRenderer(UltimateLevelOfDetail.ScannedMeshItem meshItem)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032BD RID: 12989 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032BD")]
|
|
[Address(RVA = "0xCC8F70", Offset = "0xCC7F70", VA = "0x180CC8F70")]
|
|
private void ChangeLodMeshAndMaterialsOfRenderer(UltimateLevelOfDetail.ScannedMeshItem meshItem, int lodLevel)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032BE RID: 12990 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032BE")]
|
|
[Address(RVA = "0xCC8B50", Offset = "0xCC7B50", VA = "0x180CC8B50")]
|
|
private void CalculateCorrectLodForDistanceBeforeChange(float distance)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032BF RID: 12991 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032BF")]
|
|
[Address(RVA = "0xCCAC80", Offset = "0xCC9C80", VA = "0x180CCAC80")]
|
|
public void OnRenderObject()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032C0 RID: 12992 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032C0")]
|
|
[Address(RVA = "0xCC8900", Offset = "0xCC7900", VA = "0x180CC8900")]
|
|
public void Awake()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032C1 RID: 12993 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032C1")]
|
|
[Address(RVA = "0xCCAC10", Offset = "0xCC9C10", VA = "0x180CCAC10")]
|
|
private IEnumerator OnRenderObject_HookEmulationForHDRP()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032C2 RID: 12994 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032C2")]
|
|
[Address(RVA = "0xCCAAC0", Offset = "0xCC9AC0", VA = "0x180CCAAC0")]
|
|
public void OnEnable()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032C3 RID: 12995 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032C3")]
|
|
[Address(RVA = "0xCCA530", Offset = "0xCC9530", VA = "0x180CCA530")]
|
|
public int GetCurrentLodLevel()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032C4 RID: 12996 RVA: 0x0006D254 File Offset: 0x0006B454
|
|
[Token(Token = "0x60032C4")]
|
|
[Address(RVA = "0x4C3B10", Offset = "0x4C2B10", VA = "0x1804C3B10")]
|
|
public float GetCurrentCameraDistance()
|
|
{
|
|
return this.currentDistanceFromMainCamera;
|
|
}
|
|
|
|
// Token: 0x060032C5 RID: 12997 RVA: 0x0006D268 File Offset: 0x0006B468
|
|
[Token(Token = "0x60032C5")]
|
|
[Address(RVA = "0x3F66E0", Offset = "0x3F56E0", VA = "0x1803F66E0")]
|
|
public float GetCurrentRealCameraDistance()
|
|
{
|
|
return this.currentRealDistanceFromMainCamera;
|
|
}
|
|
|
|
// Token: 0x060032C6 RID: 12998 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032C6")]
|
|
[Address(RVA = "0xCCAA70", Offset = "0xCC9A70", VA = "0x180CCAA70")]
|
|
public int GetNumberOfLodsGenerated()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032C7 RID: 12999 RVA: 0x0006D27C File Offset: 0x0006B47C
|
|
[Token(Token = "0x60032C7")]
|
|
[Address(RVA = "0xCCC6F0", Offset = "0xCCB6F0", VA = "0x180CCC6F0")]
|
|
public bool isScannedMeshesCurrentCulled()
|
|
{
|
|
return this.currentLodAccordingToDistance == 9;
|
|
}
|
|
|
|
// Token: 0x060032C8 RID: 13000 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032C8")]
|
|
[Address(RVA = "0xCCA760", Offset = "0xCC9760", VA = "0x180CCA760")]
|
|
public UltimateLevelOfDetailMeshes[] GetListOfAllMeshesScanned()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032C9 RID: 13001 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032C9")]
|
|
[Address(RVA = "0xCCA2B0", Offset = "0xCC92B0", VA = "0x180CCA2B0")]
|
|
public void ForceShowLod(bool force, int level)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032CA RID: 13002 RVA: 0x0006D294 File Offset: 0x0006B494
|
|
[Token(Token = "0x60032CA")]
|
|
[Address(RVA = "0xCCC700", Offset = "0xCCB700", VA = "0x180CCC700")]
|
|
public bool isThisComponentForcedToShowLod()
|
|
{
|
|
return this.forcedToShowOnlyALodIndependentOfDistance != -1;
|
|
}
|
|
|
|
// Token: 0x060032CB RID: 13003 RVA: 0x0006D2B0 File Offset: 0x0006B4B0
|
|
[Token(Token = "0x60032CB")]
|
|
[Address(RVA = "0x641C20", Offset = "0x640C20", VA = "0x180641C20")]
|
|
public void ForceDisableLodChangesInThisComponent(bool force)
|
|
{
|
|
this.forcedToDisableLodsOfThisComponent = force;
|
|
}
|
|
|
|
// Token: 0x060032CC RID: 13004 RVA: 0x0006D2C4 File Offset: 0x0006B4C4
|
|
[Token(Token = "0x60032CC")]
|
|
[Address(RVA = "0x641740", Offset = "0x640740", VA = "0x180641740")]
|
|
public bool isThisComponentForcedToDisableLodChanges()
|
|
{
|
|
return this.forcedToDisableLodsOfThisComponent;
|
|
}
|
|
|
|
// Token: 0x060032CD RID: 13005 RVA: 0x0006D2D8 File Offset: 0x0006B4D8
|
|
[Token(Token = "0x60032CD")]
|
|
[Address(RVA = "0xCCA3E0", Offset = "0xCC93E0", VA = "0x180CCA3E0")]
|
|
public void ForceThisComponentToUpdateLodsRender()
|
|
{
|
|
float num = UnityEngine.Random.Range(0.1f, 1f);
|
|
this.currentLodAccordingToDistance = (int)((ulong)4294967295L);
|
|
this.lastDistanceFromMainCamera = num;
|
|
this.OnRenderObject();
|
|
}
|
|
|
|
// Token: 0x060032CE RID: 13006 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032CE")]
|
|
[Address(RVA = "0xCCC6A0", Offset = "0xCCB6A0", VA = "0x180CCC6A0")]
|
|
public bool isMeshesCurrentScannedAndLodsWorkingInThisComponent()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032CF RID: 13007 RVA: 0x0006D314 File Offset: 0x0006B514
|
|
[Token(Token = "0x60032CF")]
|
|
[Address(RVA = "0xCCB560", Offset = "0xCCA560", VA = "0x180CCB560")]
|
|
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: 0x060032D0 RID: 13008 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032D0")]
|
|
[Address(RVA = "0xCCC040", Offset = "0xCCB040", VA = "0x180CCC040")]
|
|
public void UndoCurrentScanWorkingAndDeleteGeneratedMeshes(bool runMonoIl2CppGc, bool runUnityGc)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032D1 RID: 13009 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032D1")]
|
|
[Address(RVA = "0xCCA8F0", Offset = "0xCC98F0", VA = "0x180CCA8F0")]
|
|
public UltimateLevelOfDetail[] GetListOfAllUlodsInThisScene()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032D2 RID: 13010 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032D2")]
|
|
[Address(RVA = "0xCCA9A0", Offset = "0xCC99A0", VA = "0x180CCA9A0")]
|
|
public UltimateLevelOfDetailOptimizer[] GetListOfAllUlodsOptimizerInThisScene()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032D3 RID: 13011 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032D3")]
|
|
[Address(RVA = "0xCCB7D0", Offset = "0xCCA7D0", VA = "0x180CCB7D0")]
|
|
public void SetNewCustomCameraForThisAndAllUlodsInThisScene(Camera newCustomCamera)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032D4 RID: 13012 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032D4")]
|
|
[Address(RVA = "0xCC9210", Offset = "0xCC8210", VA = "0x180CC9210")]
|
|
public void ConvertThisToDefaultUnityLods()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032D5 RID: 13013 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032D5")]
|
|
[Address(RVA = "0xCCC4C0", Offset = "0xCCB4C0", VA = "0x180CCC4C0")]
|
|
public UltimateLevelOfDetail()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x04003D07 RID: 15623
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4003D07")]
|
|
private WaitForEndOfFrame WAIT_FOR_END_OF_FRAME;
|
|
|
|
// Token: 0x04003D08 RID: 15624
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4003D08")]
|
|
private Camera cacheOfMainCamera;
|
|
|
|
// Token: 0x04003D09 RID: 15625
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4003D09")]
|
|
private GameObject cacheOfUlodData;
|
|
|
|
// Token: 0x04003D0A RID: 15626
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4003D0A")]
|
|
private RuntimeInstancesDetector cacheOfUlodDataRuntimeInstancesDetector;
|
|
|
|
// Token: 0x04003D0B RID: 15627
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4003D0B")]
|
|
private float lastDistanceFromMainCamera;
|
|
|
|
// Token: 0x04003D0C RID: 15628
|
|
[FieldOffset(Offset = "0x3C")]
|
|
[Token(Token = "0x4003D0C")]
|
|
private int currentLodAccordingToDistance;
|
|
|
|
// Token: 0x04003D0D RID: 15629
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4003D0D")]
|
|
private float currentDistanceFromMainCamera;
|
|
|
|
// Token: 0x04003D0E RID: 15630
|
|
[FieldOffset(Offset = "0x44")]
|
|
[Token(Token = "0x4003D0E")]
|
|
private float currentRealDistanceFromMainCamera;
|
|
|
|
// Token: 0x04003D0F RID: 15631
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4003D0F")]
|
|
private bool forcedToDisableLodsOfThisComponent;
|
|
|
|
// Token: 0x04003D10 RID: 15632
|
|
[FieldOffset(Offset = "0x4C")]
|
|
[Token(Token = "0x4003D10")]
|
|
private int forcedToShowOnlyALodIndependentOfDistance;
|
|
|
|
// Token: 0x04003D11 RID: 15633
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4003D11")]
|
|
[HideInInspector]
|
|
public List<UltimateLevelOfDetail.ScannedMeshItem> currentScannedMeshesList;
|
|
|
|
// Token: 0x04003D12 RID: 15634
|
|
[FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x4003D12")]
|
|
[HideInInspector]
|
|
public UltimateLevelOfDetail.ScanMeshesMode modeOfMeshesScanning;
|
|
|
|
// Token: 0x04003D13 RID: 15635
|
|
[FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x4003D13")]
|
|
[HideInInspector]
|
|
public bool scanInactiveGameObjects;
|
|
|
|
// Token: 0x04003D14 RID: 15636
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x4003D14")]
|
|
[HideInInspector]
|
|
public List<GameObject> gameObjectsToIgnore;
|
|
|
|
// Token: 0x04003D15 RID: 15637
|
|
[FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x4003D15")]
|
|
[HideInInspector]
|
|
public int levelsOfDetailToGenerate;
|
|
|
|
// Token: 0x04003D16 RID: 15638
|
|
[FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x4003D16")]
|
|
[HideInInspector]
|
|
public float[] percentOfVerticesForEachLod;
|
|
|
|
// Token: 0x04003D17 RID: 15639
|
|
[FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x4003D17")]
|
|
[HideInInspector]
|
|
public bool saveGeneratedLodsInAssets;
|
|
|
|
// Token: 0x04003D18 RID: 15640
|
|
[FieldOffset(Offset = "0x79")]
|
|
[Token(Token = "0x4003D18")]
|
|
[HideInInspector]
|
|
public bool skinnedAnimsCompatibilityMode;
|
|
|
|
// Token: 0x04003D19 RID: 15641
|
|
[FieldOffset(Offset = "0x7A")]
|
|
[Token(Token = "0x4003D19")]
|
|
[HideInInspector]
|
|
public bool preventArtifacts;
|
|
|
|
// Token: 0x04003D1A RID: 15642
|
|
[FieldOffset(Offset = "0x7B")]
|
|
[Token(Token = "0x4003D1A")]
|
|
[HideInInspector]
|
|
public bool optimizeResultingMeshes;
|
|
|
|
// Token: 0x04003D1B RID: 15643
|
|
[FieldOffset(Offset = "0x7C")]
|
|
[Token(Token = "0x4003D1B")]
|
|
[HideInInspector]
|
|
public bool enableLightmapsSupport;
|
|
|
|
// Token: 0x04003D1C RID: 15644
|
|
[FieldOffset(Offset = "0x7D")]
|
|
[Token(Token = "0x4003D1C")]
|
|
[HideInInspector]
|
|
public bool enableMaterialsChanges;
|
|
|
|
// Token: 0x04003D1D RID: 15645
|
|
[FieldOffset(Offset = "0x80")]
|
|
[Token(Token = "0x4003D1D")]
|
|
[HideInInspector]
|
|
public UltimateLevelOfDetail.ForceOfSimplification forceOfSimplification;
|
|
|
|
// Token: 0x04003D1E RID: 15646
|
|
[FieldOffset(Offset = "0x84")]
|
|
[Token(Token = "0x4003D1E")]
|
|
[HideInInspector]
|
|
public UltimateLevelOfDetail.CullingMode cullingMode;
|
|
|
|
// Token: 0x04003D1F RID: 15647
|
|
[FieldOffset(Offset = "0x88")]
|
|
[Token(Token = "0x4003D1F")]
|
|
[HideInInspector]
|
|
[SerializeField]
|
|
private Transform _customPivotToSimulateLods;
|
|
|
|
// Token: 0x04003D20 RID: 15648
|
|
[FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x4003D20")]
|
|
[HideInInspector]
|
|
public UltimateLevelOfDetail.CameraDetectionMode cameraDetectionMode;
|
|
|
|
// Token: 0x04003D21 RID: 15649
|
|
[FieldOffset(Offset = "0x94")]
|
|
[Token(Token = "0x4003D21")]
|
|
[HideInInspector]
|
|
public bool useCacheForMainCameraInDetection;
|
|
|
|
// Token: 0x04003D22 RID: 15650
|
|
[FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x4003D22")]
|
|
[HideInInspector]
|
|
public Camera customCameraForSimulationOfLods;
|
|
|
|
// Token: 0x04003D23 RID: 15651
|
|
[FieldOffset(Offset = "0xA0")]
|
|
[Token(Token = "0x4003D23")]
|
|
[HideInInspector]
|
|
public float[] minDistanceOfViewForEachLod;
|
|
|
|
// Token: 0x04003D24 RID: 15652
|
|
[FieldOffset(Offset = "0xA8")]
|
|
[Token(Token = "0x4003D24")]
|
|
[HideInInspector]
|
|
public float minDistanceOfViewForCull;
|
|
|
|
// Token: 0x04003D25 RID: 15653
|
|
[FieldOffset(Offset = "0xB0")]
|
|
[Token(Token = "0x4003D25")]
|
|
public UnityEvent onDoneScan;
|
|
|
|
// Token: 0x04003D26 RID: 15654
|
|
[FieldOffset(Offset = "0xB8")]
|
|
[Token(Token = "0x4003D26")]
|
|
public UnityEvent onUndoScan;
|
|
|
|
// Token: 0x04003D27 RID: 15655
|
|
[FieldOffset(Offset = "0xC0")]
|
|
[Token(Token = "0x4003D27")]
|
|
[HideInInspector]
|
|
public bool forceChangeLodsOfSkinnedInEditor;
|
|
|
|
// Token: 0x04003D28 RID: 15656
|
|
[FieldOffset(Offset = "0xC1")]
|
|
[Token(Token = "0x4003D28")]
|
|
[HideInInspector]
|
|
public bool drawGizmoOnThisPivot;
|
|
|
|
// Token: 0x04003D29 RID: 15657
|
|
[FieldOffset(Offset = "0xC4")]
|
|
[Token(Token = "0x4003D29")]
|
|
[HideInInspector]
|
|
public Color colorOfGizmo;
|
|
|
|
// Token: 0x04003D2A RID: 15658
|
|
[FieldOffset(Offset = "0xD4")]
|
|
[Token(Token = "0x4003D2A")]
|
|
[HideInInspector]
|
|
public float sizeOfGizmo;
|
|
|
|
// Token: 0x04003D2B RID: 15659
|
|
[FieldOffset(Offset = "0xD8")]
|
|
[Token(Token = "0x4003D2B")]
|
|
[HideInInspector]
|
|
public bool forceShowHiddenSettings;
|
|
|
|
// Token: 0x0200064F RID: 1615
|
|
[Token(Token = "0x200064F")]
|
|
public enum ScanMeshesMode
|
|
{
|
|
// Token: 0x04003D2D RID: 15661
|
|
[Token(Token = "0x4003D2D")]
|
|
ScanInChildrenGameObjectsOnly,
|
|
// Token: 0x04003D2E RID: 15662
|
|
[Token(Token = "0x4003D2E")]
|
|
ScanInThisGameObjectOnly
|
|
}
|
|
|
|
// Token: 0x02000650 RID: 1616
|
|
[Token(Token = "0x2000650")]
|
|
public enum ForceOfSimplification
|
|
{
|
|
// Token: 0x04003D30 RID: 15664
|
|
[Token(Token = "0x4003D30")]
|
|
Normal,
|
|
// Token: 0x04003D31 RID: 15665
|
|
[Token(Token = "0x4003D31")]
|
|
Strong,
|
|
// Token: 0x04003D32 RID: 15666
|
|
[Token(Token = "0x4003D32")]
|
|
VeryStrong,
|
|
// Token: 0x04003D33 RID: 15667
|
|
[Token(Token = "0x4003D33")]
|
|
ExtremelyStrong,
|
|
// Token: 0x04003D34 RID: 15668
|
|
[Token(Token = "0x4003D34")]
|
|
Destroyer
|
|
}
|
|
|
|
// Token: 0x02000651 RID: 1617
|
|
[Token(Token = "0x2000651")]
|
|
public enum CullingMode
|
|
{
|
|
// Token: 0x04003D36 RID: 15670
|
|
[Token(Token = "0x4003D36")]
|
|
Disabled,
|
|
// Token: 0x04003D37 RID: 15671
|
|
[Token(Token = "0x4003D37")]
|
|
CullingMeshes,
|
|
// Token: 0x04003D38 RID: 15672
|
|
[Token(Token = "0x4003D38")]
|
|
CullingRenderer
|
|
}
|
|
|
|
// Token: 0x02000652 RID: 1618
|
|
[Token(Token = "0x2000652")]
|
|
public enum CameraDetectionMode
|
|
{
|
|
// Token: 0x04003D3A RID: 15674
|
|
[Token(Token = "0x4003D3A")]
|
|
CurrentCamera,
|
|
// Token: 0x04003D3B RID: 15675
|
|
[Token(Token = "0x4003D3B")]
|
|
MainCamera,
|
|
// Token: 0x04003D3C RID: 15676
|
|
[Token(Token = "0x4003D3C")]
|
|
CustomCamera
|
|
}
|
|
|
|
// Token: 0x02000653 RID: 1619
|
|
[Token(Token = "0x2000653")]
|
|
[Serializable]
|
|
public class ScannedMeshItem
|
|
{
|
|
// Token: 0x060032D6 RID: 13014 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x60032D6")]
|
|
[Address(RVA = "0x6CA250", Offset = "0x6C9250", VA = "0x1806CA250")]
|
|
public void InitializeAllMeshLodsMaterialsArray()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060032D7 RID: 13015 RVA: 0x0006D378 File Offset: 0x0006B578
|
|
[Token(Token = "0x60032D7")]
|
|
[Address(RVA = "0x6CA370", Offset = "0x6C9370", VA = "0x1806CA370")]
|
|
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: 0x04003D3D RID: 15677
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4003D3D")]
|
|
public GameObject originalGameObject;
|
|
|
|
// Token: 0x04003D3E RID: 15678
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4003D3E")]
|
|
public SkinnedMeshRenderer originalSkinnedMeshRenderer;
|
|
|
|
// Token: 0x04003D3F RID: 15679
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4003D3F")]
|
|
public MeshFilter originalMeshFilter;
|
|
|
|
// Token: 0x04003D40 RID: 15680
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4003D40")]
|
|
public MeshRenderer originalMeshRenderer;
|
|
|
|
// Token: 0x04003D41 RID: 15681
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4003D41")]
|
|
public Mesh[] allMeshLods;
|
|
|
|
// Token: 0x04003D42 RID: 15682
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4003D42")]
|
|
public string[] allMeshLodsPaths;
|
|
|
|
// Token: 0x04003D43 RID: 15683
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4003D43")]
|
|
public bool canChangeMaterialsOnThisMeshLods;
|
|
|
|
// Token: 0x04003D44 RID: 15684
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4003D44")]
|
|
public UltimateLevelOfDetail.ScannedMeshItem.MeshMaterials[] allMeshLodsMaterials;
|
|
|
|
// Token: 0x04003D45 RID: 15685
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4003D45")]
|
|
public UltimateLevelOfDetailMeshes originalMeshLodsManager;
|
|
|
|
// Token: 0x04003D46 RID: 15686
|
|
[FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x4003D46")]
|
|
public Mesh beforeCullingData_lastMeshOfThis;
|
|
|
|
// Token: 0x04003D47 RID: 15687
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x4003D47")]
|
|
public bool beforeCullingData_isForcedToRenderizationOff;
|
|
|
|
// Token: 0x02000654 RID: 1620
|
|
[Token(Token = "0x2000654")]
|
|
[Serializable]
|
|
public class MeshMaterials
|
|
{
|
|
// Token: 0x060032D8 RID: 13016 RVA: 0x0003DF9B File Offset: 0x0003C19B
|
|
[Token(Token = "0x60032D8")]
|
|
[Address(RVA = "0x19B5830", Offset = "0x19B4830", VA = "0x1819B5830")]
|
|
public MeshMaterials()
|
|
{
|
|
}
|
|
|
|
// Token: 0x04003D48 RID: 15688
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4003D48")]
|
|
public Material[] materialArray;
|
|
}
|
|
}
|
|
}
|
|
}
|