180 lines
6.3 KiB
C#
180 lines
6.3 KiB
C#
using System;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using RecRoom;
|
|
using Unity.Jobs;
|
|
using UnityEngine;
|
|
|
|
namespace ClusterLOD
|
|
{
|
|
// Token: 0x02000C9E RID: 3230
|
|
[Token(Token = "0x2000C9E")]
|
|
[StructLayout(3)]
|
|
public class CreateMeshFromClusterJob : IDisposable
|
|
{
|
|
// Token: 0x17000D76 RID: 3446
|
|
// (get) Token: 0x06004DA3 RID: 19875 RVA: 0x0000220F File Offset: 0x0000040F
|
|
// (set) Token: 0x06004DA4 RID: 19876 RVA: 0x0012148C File Offset: 0x0011F68C
|
|
[Token(Token = "0x17000D76")]
|
|
public JobHandle jobHandle
|
|
{
|
|
[Token(Token = "0x6004DA3")]
|
|
[Address(RVA = "0xE6BDC0", Offset = "0xE6A7C0", VA = "0x180E6BDC0")]
|
|
[CompilerGenerated]
|
|
get
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
[Token(Token = "0x6004DA4")]
|
|
[Address(RVA = "0xE727D0", Offset = "0xE711D0", VA = "0x180E727D0")]
|
|
[CompilerGenerated]
|
|
private set
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x17000D77 RID: 3447
|
|
// (get) Token: 0x06004DA5 RID: 19877 RVA: 0x0012149C File Offset: 0x0011F69C
|
|
// (set) Token: 0x06004DA6 RID: 19878 RVA: 0x001214B0 File Offset: 0x0011F6B0
|
|
[Token(Token = "0x17000D77")]
|
|
public ClusterMesh.ClusterInfo cluster
|
|
{
|
|
[Token(Token = "0x6004DA5")]
|
|
[Address(RVA = "0x3C1250", Offset = "0x3BFC50", VA = "0x1803C1250")]
|
|
get;
|
|
[Token(Token = "0x6004DA6")]
|
|
[Address(RVA = "0x3C1290", Offset = "0x3BFC90", VA = "0x1803C1290")]
|
|
private set;
|
|
}
|
|
|
|
// Token: 0x17000D78 RID: 3448
|
|
// (get) Token: 0x06004DA7 RID: 19879 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x17000D78")]
|
|
public bool Active
|
|
{
|
|
[Token(Token = "0x6004DA7")]
|
|
[Address(RVA = "0x78E160", Offset = "0x78CB60", VA = "0x18078E160")]
|
|
get
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
}
|
|
|
|
// Token: 0x17000D79 RID: 3449
|
|
// (get) Token: 0x06004DA8 RID: 19880 RVA: 0x001214C4 File Offset: 0x0011F6C4
|
|
[Token(Token = "0x17000D79")]
|
|
public NativeClusterMesh SharedNativeMesh
|
|
{
|
|
[Token(Token = "0x6004DA8")]
|
|
[Address(RVA = "0x3D32F0", Offset = "0x3D1CF0", VA = "0x1803D32F0")]
|
|
get
|
|
{
|
|
return this.resultMesh;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004DA9 RID: 19881 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x6004DA9")]
|
|
[Address(RVA = "0x1B37FA0", Offset = "0x1B369A0", VA = "0x181B37FA0")]
|
|
public void Init(ClusterMesh.ClusterInfo clusterInfo, Transform root, int lod)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06004DAA RID: 19882 RVA: 0x001214D8 File Offset: 0x0011F6D8
|
|
[Token(Token = "0x6004DAA")]
|
|
[Address(RVA = "0x1B37B90", Offset = "0x1B36590", VA = "0x181B37B90")]
|
|
public void CreateMesh()
|
|
{
|
|
ClusterLODConfig <Config>k__BackingField = ClusterLODManager._instance.<Config>k__BackingField;
|
|
if (this.currentLod != 0)
|
|
{
|
|
}
|
|
ClusterLODConfig.LODSettings near = <Config>k__BackingField.near;
|
|
JobHandle jobHandle = this.<jobHandle>k__BackingField;
|
|
bool useMaterials = near.useMaterials;
|
|
NativeClusterMesh nativeClusterMesh = this.resultMesh;
|
|
NativeClusterMesh sharedAdditionalMesh = CreateMeshFromClusterJob.SharedAdditionalMesh;
|
|
Mesh mesh = nativeClusterMesh.CreateMesh(sharedAdditionalMesh, useMaterials);
|
|
ClusterMesh.ClusterInfo clusterInfo = this.<cluster>k__BackingField;
|
|
Mesh <RequestedMesh>k__BackingField = clusterInfo.<RequestedMesh>k__BackingField;
|
|
Mesh <ActiveMesh>k__BackingField = clusterInfo.<ActiveMesh>k__BackingField;
|
|
if (<RequestedMesh>k__BackingField != <ActiveMesh>k__BackingField)
|
|
{
|
|
SafeDestroy.Asset(clusterInfo.<RequestedMesh>k__BackingField);
|
|
}
|
|
clusterInfo.<RequestedMesh>k__BackingField = mesh;
|
|
ulong num;
|
|
mesh.UploadMeshData(num != 0UL);
|
|
NativeClusterMesh nativeClusterMesh2 = this.resultMesh;
|
|
ClusterMesh.ClusterInfo clusterInfo2 = this.<cluster>k__BackingField;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06004DAB RID: 19883 RVA: 0x001215D4 File Offset: 0x0011F7D4
|
|
[Token(Token = "0x6004DAB")]
|
|
[Address(RVA = "0x1B37F00", Offset = "0x1B36900", VA = "0x181B37F00", Slot = "4")]
|
|
public void Dispose()
|
|
{
|
|
JobHandle jobHandle = this.<jobHandle>k__BackingField;
|
|
this.sharedResultMesh.Dispose();
|
|
this.meshOptimizationData.Dispose();
|
|
ClusterLODCollection clusterLODCollection = this.sharedClusterLODCollection;
|
|
throw new MissingMethodException();
|
|
}
|
|
|
|
// Token: 0x06004DAC RID: 19884 RVA: 0x00121614 File Offset: 0x0011F814
|
|
[Token(Token = "0x6004DAC")]
|
|
[Address(RVA = "0x1B37B60", Offset = "0x1B36560", VA = "0x181B37B60")]
|
|
public void Clear()
|
|
{
|
|
JobHandle jobHandle = this.<jobHandle>k__BackingField;
|
|
this.<cluster>k__BackingField = (ulong)0L;
|
|
}
|
|
|
|
// Token: 0x06004DAD RID: 19885 RVA: 0x00121634 File Offset: 0x0011F834
|
|
[Token(Token = "0x6004DAD")]
|
|
[Address(RVA = "0x1B393C0", Offset = "0x1B37DC0", VA = "0x181B393C0")]
|
|
public CreateMeshFromClusterJob()
|
|
{
|
|
NativeClusterMesh nativeClusterMesh = new NativeClusterMesh();
|
|
this.sharedResultMesh = nativeClusterMesh;
|
|
MeshOptimizationData meshOptimizationData = new MeshOptimizationData();
|
|
this.meshOptimizationData = meshOptimizationData;
|
|
ClusterLODCollection clusterLODCollection = new ClusterLODCollection();
|
|
this.sharedClusterLODCollection = clusterLODCollection;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x040039BD RID: 14781
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x40039BD")]
|
|
private NativeClusterMesh sharedResultMesh;
|
|
|
|
// Token: 0x040039BE RID: 14782
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x40039BE")]
|
|
private MeshOptimizationData meshOptimizationData;
|
|
|
|
// Token: 0x040039C0 RID: 14784
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x40039C0")]
|
|
private ClusterLODCollection sharedClusterLODCollection;
|
|
|
|
// Token: 0x040039C1 RID: 14785
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x40039C1")]
|
|
private NativeClusterMesh resultMesh;
|
|
|
|
// Token: 0x040039C2 RID: 14786
|
|
[Token(Token = "0x40039C2")]
|
|
public static readonly NativeClusterMesh SharedAdditionalMesh = new NativeClusterMesh();
|
|
|
|
// Token: 0x040039C3 RID: 14787
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x40039C3")]
|
|
private int currentLod;
|
|
}
|
|
}
|