using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;

namespace MTAssets.UltimateLODSystem.MeshSimplifier
{
	// Token: 0x0200065D RID: 1629
	[Token(Token = "0x200065D")]
	[Serializable]
	[StructLayout(3)]
	public struct BlendShapeFrame
	{
		// Token: 0x06003303 RID: 13059 RVA: 0x0006D660 File Offset: 0x0006B860
		[Token(Token = "0x6003303")]
		[Address(RVA = "0x7ADB60", Offset = "0x7ACB60", VA = "0x1807ADB60")]
		public BlendShapeFrame(float frameWeight, Vector3[] deltaVertices, Vector3[] deltaNormals, Vector3[] deltaTangents)
		{
			/*
An exception occurred when decompiling this method (06003303)

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: 0x04003D6F RID: 15727
		[Cpp2IlInjected.FieldOffset(Offset = "0x0")]
		[Token(Token = "0x4003D6F")]
		public float FrameWeight;

		// Token: 0x04003D70 RID: 15728
		[Cpp2IlInjected.FieldOffset(Offset = "0x8")]
		[Token(Token = "0x4003D70")]
		public Vector3[] DeltaVertices;

		// Token: 0x04003D71 RID: 15729
		[Cpp2IlInjected.FieldOffset(Offset = "0x10")]
		[Token(Token = "0x4003D71")]
		public Vector3[] DeltaNormals;

		// Token: 0x04003D72 RID: 15730
		[Cpp2IlInjected.FieldOffset(Offset = "0x18")]
		[Token(Token = "0x4003D72")]
		public Vector3[] DeltaTangents;
	}
}
