using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
using UnityEngine.Rendering;

namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
	// Token: 0x02000665 RID: 1637
	[Token(Token = "0x2000665")]
	public static class MeshUtils
	{
		// Token: 0x060033A1 RID: 13217 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A1")]
		[Address(RVA = "0xC2DC90", Offset = "0xC2CC90", VA = "0x180C2DC90")]
		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: 0x060033A2 RID: 13218 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A2")]
		[Address(RVA = "0xC2E360", Offset = "0xC2D360", VA = "0x180C2E360")]
		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: 0x060033A3 RID: 13219 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A3")]
		[Address(RVA = "0xC2DD70", Offset = "0xC2CD70", VA = "0x180C2DD70")]
		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: 0x060033A4 RID: 13220 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A4")]
		[Address(RVA = "0xC2E4D0", Offset = "0xC2D4D0", VA = "0x180C2E4D0")]
		public static BlendShape[] GetMeshBlendShapes(Mesh mesh)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033A5 RID: 13221 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A5")]
		[Address(RVA = "0xC2D7F0", Offset = "0xC2C7F0", VA = "0x180C2D7F0")]
		public static void ApplyMeshBlendShapes(Mesh mesh, BlendShape[] blendShapes)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033A6 RID: 13222 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A6")]
		[Address(RVA = "0xC2ED90", Offset = "0xC2DD90", VA = "0x180C2ED90")]
		public static IList<Vector4>[] GetMeshUVs(Mesh mesh)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033A7 RID: 13223 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A7")]
		[Address(RVA = "0xC2E850", Offset = "0xC2D850", VA = "0x180C2E850")]
		public static IList<Vector2> GetMeshUVs2D(Mesh mesh, int channel)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033A8 RID: 13224 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A8")]
		[Address(RVA = "0xC2EA10", Offset = "0xC2DA10", VA = "0x180C2EA10")]
		public static IList<Vector3> GetMeshUVs3D(Mesh mesh, int channel)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033A9 RID: 13225 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033A9")]
		[Address(RVA = "0xC2EBD0", Offset = "0xC2DBD0", VA = "0x180C2EBD0")]
		public static IList<Vector4> GetMeshUVs(Mesh mesh, int channel)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033AA RID: 13226 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033AA")]
		[Address(RVA = "0xC2F150", Offset = "0xC2E150", VA = "0x180C2F150")]
		public static int GetUsedUVComponents(IList<Vector4> uvs)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033AB RID: 13227 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033AB")]
		[Address(RVA = "0xC2D9A0", Offset = "0xC2C9A0", VA = "0x180C2D9A0")]
		public static Vector2[] ConvertUVsTo2D(IList<Vector4> uvs)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033AC RID: 13228 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033AC")]
		[Address(RVA = "0xC2DB10", Offset = "0xC2CB10", VA = "0x180C2DB10")]
		public static Vector3[] ConvertUVsTo3D(IList<Vector4> uvs)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033AD RID: 13229 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033AD")]
		[Address(RVA = "0xC2EF70", Offset = "0xC2DF70", VA = "0x180C2EF70")]
		public static Vector2Int[] GetSubMeshIndexMinMax(int[][] indices, out IndexFormat indexFormat)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033AE RID: 13230 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033AE")]
		[Address(RVA = "0xC2E440", Offset = "0xC2D440", VA = "0x180C2E440")]
		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: 0x04003DAC RID: 15788
		[Token(Token = "0x4003DAC")]
		public static readonly int UVChannelCount;
	}
}
