using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppInterop.Runtime.InteropTypes.Arrays;
using UnityEngine;

namespace RootMotion.FinalIK
{
	// Token: 0x02000440 RID: 1088
	[Serializable]
	public class IKSolverLeg : IKSolver
	{
		// Token: 0x060081EA RID: 33258 RVA: 0x00213388 File Offset: 0x00211588
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599458, XrefRangeEnd = 599501, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override bool IsValid(ref string message)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				ref IntPtr ptr2 = ref *ptr;
				IntPtr intPtr = IL2CPP.ManagedStringToIl2Cpp(message);
				ptr2 = &intPtr;
				IntPtr intPtr3;
				IntPtr intPtr2 = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IKSolverLeg.NativeMethodInfoPtr_IsValid_Public_Virtual_Boolean_byref_String_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr3);
				Il2CppException.RaiseExceptionIfNecessary(intPtr3);
				message = IL2CPP.Il2CppStringToManaged(intPtr);
				return *IL2CPP.il2cpp_object_unbox(intPtr2);
			}
		}

		// Token: 0x060081EB RID: 33259 RVA: 0x00213414 File Offset: 0x00211614
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599501, XrefRangeEnd = 599507, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe bool SetChain(Transform pelvis, Transform thigh, Transform calf, Transform foot, Transform toe, Transform root)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)6) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(pelvis);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(thigh);
			ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(calf);
			ptr[checked(unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(foot);
			ptr[checked(unchecked((UIntPtr)4) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(toe);
			ptr[checked(unchecked((UIntPtr)5) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(root);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IKSolverLeg.NativeMethodInfoPtr_SetChain_Public_Boolean_Transform_Transform_Transform_Transform_Transform_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x060081EC RID: 33260 RVA: 0x002134F4 File Offset: 0x002116F4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599507, XrefRangeEnd = 599520, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override Il2CppReferenceArray<IKSolver.Point> GetPoints()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IKSolverLeg.NativeMethodInfoPtr_GetPoints_Public_Virtual_Il2CppReferenceArray_1_Point_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			IntPtr intPtr3 = intPtr;
			return (intPtr3 != 0) ? new Il2CppReferenceArray<IKSolver.Point>(intPtr3) : null;
		}

		// Token: 0x060081ED RID: 33261 RVA: 0x00213558 File Offset: 0x00211758
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599520, XrefRangeEnd = 599536, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override IKSolver.Point GetPoint(Transform transform)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(transform);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IKSolverLeg.NativeMethodInfoPtr_GetPoint_Public_Virtual_Point_Transform_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new IKSolver.Point(intPtr3) : null;
			}
		}

		// Token: 0x060081EE RID: 33262 RVA: 0x002135D0 File Offset: 0x002117D0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599536, XrefRangeEnd = 599541, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void StoreDefaultLocalState()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IKSolverLeg.NativeMethodInfoPtr_StoreDefaultLocalState_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060081EF RID: 33263 RVA: 0x00213620 File Offset: 0x00211820
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599541, XrefRangeEnd = 599546, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void FixTransforms()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IKSolverLeg.NativeMethodInfoPtr_FixTransforms_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060081F0 RID: 33264 RVA: 0x00213670 File Offset: 0x00211870
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599546, XrefRangeEnd = 599550, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void OnInitiate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IKSolverLeg.NativeMethodInfoPtr_OnInitiate_Protected_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060081F1 RID: 33265 RVA: 0x002136C0 File Offset: 0x002118C0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599550, XrefRangeEnd = 599554, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void OnUpdate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IKSolverLeg.NativeMethodInfoPtr_OnUpdate_Protected_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060081F2 RID: 33266 RVA: 0x00213710 File Offset: 0x00211910
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 599554, XrefRangeEnd = 599556, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Solve()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IKSolverLeg.NativeMethodInfoPtr_Solve_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060081F3 RID: 33267 RVA: 0x00213754 File Offset: 0x00211954
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 599569, RefRangeEnd = 599571, XrefRangeStart = 599556, XrefRangeEnd = 599569, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Read()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IKSolverLeg.NativeMethodInfoPtr_Read_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060081F4 RID: 33268 RVA: 0x00213798 File Offset: 0x00211998
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 599575, RefRangeEnd = 599576, XrefRangeStart = 599571, XrefRangeEnd = 599575, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Write()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IKSolverLeg.NativeMethodInfoPtr_Write_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060081F5 RID: 33269 RVA: 0x002137DC File Offset: 0x002119DC
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 599612, RefRangeEnd = 599613, XrefRangeStart = 599576, XrefRangeEnd = 599612, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe IKSolverLeg()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IKSolverLeg.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060081F6 RID: 33270 RVA: 0x00213828 File Offset: 0x00211A28
		// Note: this type is marked as 'beforefieldinit'.
		static IKSolverLeg()
		{
			Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion.FinalIK", "IKSolverLeg");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr);
			IKSolverLeg.NativeFieldInfoPtr_IKRotationWeight = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "IKRotationWeight");
			IKSolverLeg.NativeFieldInfoPtr_IKRotation = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "IKRotation");
			IKSolverLeg.NativeFieldInfoPtr_pelvis = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "pelvis");
			IKSolverLeg.NativeFieldInfoPtr_thigh = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "thigh");
			IKSolverLeg.NativeFieldInfoPtr_calf = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "calf");
			IKSolverLeg.NativeFieldInfoPtr_foot = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "foot");
			IKSolverLeg.NativeFieldInfoPtr_toe = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "toe");
			IKSolverLeg.NativeFieldInfoPtr_leg = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "leg");
			IKSolverLeg.NativeFieldInfoPtr_heelOffset = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "heelOffset");
			IKSolverLeg.NativeFieldInfoPtr_positions = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "positions");
			IKSolverLeg.NativeFieldInfoPtr_rotations = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, "rotations");
			IKSolverLeg.NativeMethodInfoPtr_IsValid_Public_Virtual_Boolean_byref_String_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673166);
			IKSolverLeg.NativeMethodInfoPtr_SetChain_Public_Boolean_Transform_Transform_Transform_Transform_Transform_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673167);
			IKSolverLeg.NativeMethodInfoPtr_GetPoints_Public_Virtual_Il2CppReferenceArray_1_Point_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673168);
			IKSolverLeg.NativeMethodInfoPtr_GetPoint_Public_Virtual_Point_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673169);
			IKSolverLeg.NativeMethodInfoPtr_StoreDefaultLocalState_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673170);
			IKSolverLeg.NativeMethodInfoPtr_FixTransforms_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673171);
			IKSolverLeg.NativeMethodInfoPtr_OnInitiate_Protected_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673172);
			IKSolverLeg.NativeMethodInfoPtr_OnUpdate_Protected_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673173);
			IKSolverLeg.NativeMethodInfoPtr_Solve_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673174);
			IKSolverLeg.NativeMethodInfoPtr_Read_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673175);
			IKSolverLeg.NativeMethodInfoPtr_Write_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673176);
			IKSolverLeg.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IKSolverLeg>.NativeClassPtr, 100673177);
		}

		// Token: 0x060081F7 RID: 33271 RVA: 0x002100C4 File Offset: 0x0020E2C4
		public IKSolverLeg(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17002C3C RID: 11324
		// (get) Token: 0x060081F8 RID: 33272 RVA: 0x00213A24 File Offset: 0x00211C24
		// (set) Token: 0x060081F9 RID: 33273 RVA: 0x00213A4C File Offset: 0x00211C4C
		public unsafe float IKRotationWeight
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_IKRotationWeight);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_IKRotationWeight)) = value;
			}
		}

		// Token: 0x17002C3D RID: 11325
		// (get) Token: 0x060081FA RID: 33274 RVA: 0x00213A70 File Offset: 0x00211C70
		// (set) Token: 0x060081FB RID: 33275 RVA: 0x00213A98 File Offset: 0x00211C98
		public unsafe Quaternion IKRotation
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_IKRotation);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_IKRotation)) = value;
			}
		}

		// Token: 0x17002C3E RID: 11326
		// (get) Token: 0x060081FC RID: 33276 RVA: 0x00213ABC File Offset: 0x00211CBC
		// (set) Token: 0x060081FD RID: 33277 RVA: 0x00213AF0 File Offset: 0x00211CF0
		public unsafe IKSolver.Point pelvis
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_pelvis);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new IKSolver.Point(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_pelvis), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002C3F RID: 11327
		// (get) Token: 0x060081FE RID: 33278 RVA: 0x00213B18 File Offset: 0x00211D18
		// (set) Token: 0x060081FF RID: 33279 RVA: 0x00213B4C File Offset: 0x00211D4C
		public unsafe IKSolver.Point thigh
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_thigh);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new IKSolver.Point(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_thigh), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002C40 RID: 11328
		// (get) Token: 0x06008200 RID: 33280 RVA: 0x00213B74 File Offset: 0x00211D74
		// (set) Token: 0x06008201 RID: 33281 RVA: 0x00213BA8 File Offset: 0x00211DA8
		public unsafe IKSolver.Point calf
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_calf);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new IKSolver.Point(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_calf), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002C41 RID: 11329
		// (get) Token: 0x06008202 RID: 33282 RVA: 0x00213BD0 File Offset: 0x00211DD0
		// (set) Token: 0x06008203 RID: 33283 RVA: 0x00213C04 File Offset: 0x00211E04
		public unsafe IKSolver.Point foot
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_foot);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new IKSolver.Point(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_foot), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002C42 RID: 11330
		// (get) Token: 0x06008204 RID: 33284 RVA: 0x00213C2C File Offset: 0x00211E2C
		// (set) Token: 0x06008205 RID: 33285 RVA: 0x00213C60 File Offset: 0x00211E60
		public unsafe IKSolver.Point toe
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_toe);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new IKSolver.Point(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_toe), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002C43 RID: 11331
		// (get) Token: 0x06008206 RID: 33286 RVA: 0x00213C88 File Offset: 0x00211E88
		// (set) Token: 0x06008207 RID: 33287 RVA: 0x00213CBC File Offset: 0x00211EBC
		public unsafe IKSolverVR.Leg leg
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_leg);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new IKSolverVR.Leg(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_leg), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002C44 RID: 11332
		// (get) Token: 0x06008208 RID: 33288 RVA: 0x00213CE4 File Offset: 0x00211EE4
		// (set) Token: 0x06008209 RID: 33289 RVA: 0x00213D0C File Offset: 0x00211F0C
		public unsafe Vector3 heelOffset
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_heelOffset);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_heelOffset)) = value;
			}
		}

		// Token: 0x17002C45 RID: 11333
		// (get) Token: 0x0600820A RID: 33290 RVA: 0x00213D30 File Offset: 0x00211F30
		// (set) Token: 0x0600820B RID: 33291 RVA: 0x00213D64 File Offset: 0x00211F64
		public unsafe Il2CppStructArray<Vector3> positions
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_positions);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<Vector3>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_positions), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002C46 RID: 11334
		// (get) Token: 0x0600820C RID: 33292 RVA: 0x00213D8C File Offset: 0x00211F8C
		// (set) Token: 0x0600820D RID: 33293 RVA: 0x00213DC0 File Offset: 0x00211FC0
		public unsafe Il2CppStructArray<Quaternion> rotations
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_rotations);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<Quaternion>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(IKSolverLeg.NativeFieldInfoPtr_rotations), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x040056C9 RID: 22217
		private static readonly IntPtr NativeFieldInfoPtr_IKRotationWeight;

		// Token: 0x040056CA RID: 22218
		private static readonly IntPtr NativeFieldInfoPtr_IKRotation;

		// Token: 0x040056CB RID: 22219
		private static readonly IntPtr NativeFieldInfoPtr_pelvis;

		// Token: 0x040056CC RID: 22220
		private static readonly IntPtr NativeFieldInfoPtr_thigh;

		// Token: 0x040056CD RID: 22221
		private static readonly IntPtr NativeFieldInfoPtr_calf;

		// Token: 0x040056CE RID: 22222
		private static readonly IntPtr NativeFieldInfoPtr_foot;

		// Token: 0x040056CF RID: 22223
		private static readonly IntPtr NativeFieldInfoPtr_toe;

		// Token: 0x040056D0 RID: 22224
		private static readonly IntPtr NativeFieldInfoPtr_leg;

		// Token: 0x040056D1 RID: 22225
		private static readonly IntPtr NativeFieldInfoPtr_heelOffset;

		// Token: 0x040056D2 RID: 22226
		private static readonly IntPtr NativeFieldInfoPtr_positions;

		// Token: 0x040056D3 RID: 22227
		private static readonly IntPtr NativeFieldInfoPtr_rotations;

		// Token: 0x040056D4 RID: 22228
		private static readonly IntPtr NativeMethodInfoPtr_IsValid_Public_Virtual_Boolean_byref_String_0;

		// Token: 0x040056D5 RID: 22229
		private static readonly IntPtr NativeMethodInfoPtr_SetChain_Public_Boolean_Transform_Transform_Transform_Transform_Transform_Transform_0;

		// Token: 0x040056D6 RID: 22230
		private static readonly IntPtr NativeMethodInfoPtr_GetPoints_Public_Virtual_Il2CppReferenceArray_1_Point_0;

		// Token: 0x040056D7 RID: 22231
		private static readonly IntPtr NativeMethodInfoPtr_GetPoint_Public_Virtual_Point_Transform_0;

		// Token: 0x040056D8 RID: 22232
		private static readonly IntPtr NativeMethodInfoPtr_StoreDefaultLocalState_Public_Virtual_Void_0;

		// Token: 0x040056D9 RID: 22233
		private static readonly IntPtr NativeMethodInfoPtr_FixTransforms_Public_Virtual_Void_0;

		// Token: 0x040056DA RID: 22234
		private static readonly IntPtr NativeMethodInfoPtr_OnInitiate_Protected_Virtual_Void_0;

		// Token: 0x040056DB RID: 22235
		private static readonly IntPtr NativeMethodInfoPtr_OnUpdate_Protected_Virtual_Void_0;

		// Token: 0x040056DC RID: 22236
		private static readonly IntPtr NativeMethodInfoPtr_Solve_Private_Void_0;

		// Token: 0x040056DD RID: 22237
		private static readonly IntPtr NativeMethodInfoPtr_Read_Private_Void_0;

		// Token: 0x040056DE RID: 22238
		private static readonly IntPtr NativeMethodInfoPtr_Write_Private_Void_0;

		// Token: 0x040056DF RID: 22239
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
