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;
		}
	}
}
