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

namespace Obi
{
	// Token: 0x02000535 RID: 1333
	public class ObiTriangleSkinMap : ScriptableObject
	{
		// Token: 0x17003358 RID: 13144
		// (get) Token: 0x060097C1 RID: 38849 RVA: 0x00271168 File Offset: 0x0026F368
		// (set) Token: 0x060097C0 RID: 38848 RVA: 0x0027110C File Offset: 0x0026F30C
		public unsafe ObiMeshTopology SourceTopology
		{
			[CallerCount(32)]
			[CachedScanResults(RefRangeStart = 18846, RefRangeEnd = 18878, XrefRangeStart = 18846, XrefRangeEnd = 18878, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_get_SourceTopology_Public_get_ObiMeshTopology_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new ObiMeshTopology(intPtr3) : null;
			}
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 643603, XrefRangeEnd = 643613, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			set
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_set_SourceTopology_Public_set_Void_ObiMeshTopology_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}
		}

		// Token: 0x17003359 RID: 13145
		// (get) Token: 0x060097C3 RID: 38851 RVA: 0x0027121C File Offset: 0x0026F41C
		// (set) Token: 0x060097C2 RID: 38850 RVA: 0x002711C0 File Offset: 0x0026F3C0
		public unsafe Mesh TargetMesh
		{
			[CallerCount(12)]
			[CachedScanResults(RefRangeStart = 14737, RefRangeEnd = 14749, XrefRangeStart = 14737, XrefRangeEnd = 14749, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_get_TargetMesh_Public_get_Mesh_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new Mesh(intPtr3) : null;
			}
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 643613, XrefRangeEnd = 643623, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			set
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_set_TargetMesh_Public_set_Void_Mesh_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}
		}

		// Token: 0x1700335A RID: 13146
		// (get) Token: 0x060097C4 RID: 38852 RVA: 0x00271274 File Offset: 0x0026F474
		public unsafe IntPtr TriangleSkinMap
		{
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 7615, RefRangeEnd = 7616, XrefRangeStart = 7615, XrefRangeEnd = 7616, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_get_TriangleSkinMap_Public_get_IntPtr_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x060097C5 RID: 38853 RVA: 0x002712C4 File Offset: 0x0026F4C4
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 643629, RefRangeEnd = 643631, XrefRangeStart = 643623, XrefRangeEnd = 643629, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void ValidateMasterFlags(bool resetValues)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref resetValues;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_ValidateMasterFlags_Private_Void_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x060097C6 RID: 38854 RVA: 0x00271318 File Offset: 0x0026F518
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 643637, RefRangeEnd = 643639, XrefRangeStart = 643631, XrefRangeEnd = 643637, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void ValidateSlaveFlags(bool resetValues)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref resetValues;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_ValidateSlaveFlags_Private_Void_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x060097C7 RID: 38855 RVA: 0x0027136C File Offset: 0x0026F56C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 643639, XrefRangeEnd = 643645, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnEnable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_OnEnable_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060097C8 RID: 38856 RVA: 0x002713B0 File Offset: 0x0026F5B0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 643645, XrefRangeEnd = 643735, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Bind(Transform sourceTransform, Transform targetTransform)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(sourceTransform);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(targetTransform);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr_Bind_Public_Void_Transform_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060097C9 RID: 38857 RVA: 0x00271424 File Offset: 0x0026F624
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 643735, XrefRangeEnd = 643744, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ObiTriangleSkinMap()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060097CA RID: 38858 RVA: 0x00271470 File Offset: 0x0026F670
		// Note: this type is marked as 'beforefieldinit'.
		static ObiTriangleSkinMap()
		{
			Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "Obi", "ObiTriangleSkinMap");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr);
			ObiTriangleSkinMap.NativeFieldInfoPtr_bound = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "bound");
			ObiTriangleSkinMap.NativeFieldInfoPtr_triangleSkinMap = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "triangleSkinMap");
			ObiTriangleSkinMap.NativeFieldInfoPtr_masterFlags = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "masterFlags");
			ObiTriangleSkinMap.NativeFieldInfoPtr_slaveFlags = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "slaveFlags");
			ObiTriangleSkinMap.NativeFieldInfoPtr_skinnedVertices = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "skinnedVertices");
			ObiTriangleSkinMap.NativeFieldInfoPtr_skinnedTriangles = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "skinnedTriangles");
			ObiTriangleSkinMap.NativeFieldInfoPtr_baryPositions = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "baryPositions");
			ObiTriangleSkinMap.NativeFieldInfoPtr_baryNormals = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "baryNormals");
			ObiTriangleSkinMap.NativeFieldInfoPtr_baryTangents = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "baryTangents");
			ObiTriangleSkinMap.NativeFieldInfoPtr_sourceTopology = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "sourceTopology");
			ObiTriangleSkinMap.NativeFieldInfoPtr_targetMesh = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "targetMesh");
			ObiTriangleSkinMap.NativeFieldInfoPtr_sourceSkinTransform = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "sourceSkinTransform");
			ObiTriangleSkinMap.NativeFieldInfoPtr_targetSkinTransform = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "targetSkinTransform");
			ObiTriangleSkinMap.NativeMethodInfoPtr_set_SourceTopology_Public_set_Void_ObiMeshTopology_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675118);
			ObiTriangleSkinMap.NativeMethodInfoPtr_get_SourceTopology_Public_get_ObiMeshTopology_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675119);
			ObiTriangleSkinMap.NativeMethodInfoPtr_set_TargetMesh_Public_set_Void_Mesh_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675120);
			ObiTriangleSkinMap.NativeMethodInfoPtr_get_TargetMesh_Public_get_Mesh_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675121);
			ObiTriangleSkinMap.NativeMethodInfoPtr_get_TriangleSkinMap_Public_get_IntPtr_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675122);
			ObiTriangleSkinMap.NativeMethodInfoPtr_ValidateMasterFlags_Private_Void_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675123);
			ObiTriangleSkinMap.NativeMethodInfoPtr_ValidateSlaveFlags_Private_Void_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675124);
			ObiTriangleSkinMap.NativeMethodInfoPtr_OnEnable_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675125);
			ObiTriangleSkinMap.NativeMethodInfoPtr_Bind_Public_Void_Transform_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675126);
			ObiTriangleSkinMap.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, 100675127);
		}

		// Token: 0x060097CB RID: 38859 RVA: 0x00009E64 File Offset: 0x00008064
		public ObiTriangleSkinMap(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x1700334B RID: 13131
		// (get) Token: 0x060097CC RID: 38860 RVA: 0x0027166C File Offset: 0x0026F86C
		// (set) Token: 0x060097CD RID: 38861 RVA: 0x00271694 File Offset: 0x0026F894
		public unsafe bool bound
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_bound);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_bound)) = value;
			}
		}

		// Token: 0x1700334C RID: 13132
		// (get) Token: 0x060097CE RID: 38862 RVA: 0x002716B8 File Offset: 0x0026F8B8
		// (set) Token: 0x060097CF RID: 38863 RVA: 0x002716E0 File Offset: 0x0026F8E0
		public unsafe IntPtr triangleSkinMap
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_triangleSkinMap);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_triangleSkinMap)) = value;
			}
		}

		// Token: 0x1700334D RID: 13133
		// (get) Token: 0x060097D0 RID: 38864 RVA: 0x00271704 File Offset: 0x0026F904
		// (set) Token: 0x060097D1 RID: 38865 RVA: 0x00271738 File Offset: 0x0026F938
		public unsafe Il2CppStructArray<uint> masterFlags
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_masterFlags);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<uint>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_masterFlags), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700334E RID: 13134
		// (get) Token: 0x060097D2 RID: 38866 RVA: 0x00271760 File Offset: 0x0026F960
		// (set) Token: 0x060097D3 RID: 38867 RVA: 0x00271794 File Offset: 0x0026F994
		public unsafe Il2CppStructArray<uint> slaveFlags
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_slaveFlags);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<uint>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_slaveFlags), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700334F RID: 13135
		// (get) Token: 0x060097D4 RID: 38868 RVA: 0x002717BC File Offset: 0x0026F9BC
		// (set) Token: 0x060097D5 RID: 38869 RVA: 0x002717F0 File Offset: 0x0026F9F0
		public unsafe Il2CppStructArray<int> skinnedVertices
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_skinnedVertices);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<int>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_skinnedVertices), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003350 RID: 13136
		// (get) Token: 0x060097D6 RID: 38870 RVA: 0x00271818 File Offset: 0x0026FA18
		// (set) Token: 0x060097D7 RID: 38871 RVA: 0x0027184C File Offset: 0x0026FA4C
		public unsafe Il2CppStructArray<int> skinnedTriangles
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_skinnedTriangles);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppStructArray<int>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_skinnedTriangles), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003351 RID: 13137
		// (get) Token: 0x060097D8 RID: 38872 RVA: 0x00271874 File Offset: 0x0026FA74
		// (set) Token: 0x060097D9 RID: 38873 RVA: 0x002718A8 File Offset: 0x0026FAA8
		public unsafe Il2CppStructArray<Vector3> baryPositions
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_baryPositions);
				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(ObiTriangleSkinMap.NativeFieldInfoPtr_baryPositions), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003352 RID: 13138
		// (get) Token: 0x060097DA RID: 38874 RVA: 0x002718D0 File Offset: 0x0026FAD0
		// (set) Token: 0x060097DB RID: 38875 RVA: 0x00271904 File Offset: 0x0026FB04
		public unsafe Il2CppStructArray<Vector3> baryNormals
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_baryNormals);
				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(ObiTriangleSkinMap.NativeFieldInfoPtr_baryNormals), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003353 RID: 13139
		// (get) Token: 0x060097DC RID: 38876 RVA: 0x0027192C File Offset: 0x0026FB2C
		// (set) Token: 0x060097DD RID: 38877 RVA: 0x00271960 File Offset: 0x0026FB60
		public unsafe Il2CppStructArray<Vector3> baryTangents
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_baryTangents);
				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(ObiTriangleSkinMap.NativeFieldInfoPtr_baryTangents), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003354 RID: 13140
		// (get) Token: 0x060097DE RID: 38878 RVA: 0x00271988 File Offset: 0x0026FB88
		// (set) Token: 0x060097DF RID: 38879 RVA: 0x002719BC File Offset: 0x0026FBBC
		public unsafe ObiMeshTopology sourceTopology
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_sourceTopology);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new ObiMeshTopology(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_sourceTopology), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003355 RID: 13141
		// (get) Token: 0x060097E0 RID: 38880 RVA: 0x002719E4 File Offset: 0x0026FBE4
		// (set) Token: 0x060097E1 RID: 38881 RVA: 0x00271A18 File Offset: 0x0026FC18
		public unsafe Mesh targetMesh
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_targetMesh);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Mesh(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_targetMesh), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003356 RID: 13142
		// (get) Token: 0x060097E2 RID: 38882 RVA: 0x00271A40 File Offset: 0x0026FC40
		// (set) Token: 0x060097E3 RID: 38883 RVA: 0x00271A68 File Offset: 0x0026FC68
		public unsafe ObiTriangleSkinMap.SkinTransform sourceSkinTransform
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_sourceSkinTransform);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_sourceSkinTransform)) = value;
			}
		}

		// Token: 0x17003357 RID: 13143
		// (get) Token: 0x060097E4 RID: 38884 RVA: 0x00271A8C File Offset: 0x0026FC8C
		// (set) Token: 0x060097E5 RID: 38885 RVA: 0x00271AB4 File Offset: 0x0026FCB4
		public unsafe ObiTriangleSkinMap.SkinTransform targetSkinTransform
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_targetSkinTransform);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiTriangleSkinMap.NativeFieldInfoPtr_targetSkinTransform)) = value;
			}
		}

		// Token: 0x04006539 RID: 25913
		private static readonly IntPtr NativeFieldInfoPtr_bound;

		// Token: 0x0400653A RID: 25914
		private static readonly IntPtr NativeFieldInfoPtr_triangleSkinMap;

		// Token: 0x0400653B RID: 25915
		private static readonly IntPtr NativeFieldInfoPtr_masterFlags;

		// Token: 0x0400653C RID: 25916
		private static readonly IntPtr NativeFieldInfoPtr_slaveFlags;

		// Token: 0x0400653D RID: 25917
		private static readonly IntPtr NativeFieldInfoPtr_skinnedVertices;

		// Token: 0x0400653E RID: 25918
		private static readonly IntPtr NativeFieldInfoPtr_skinnedTriangles;

		// Token: 0x0400653F RID: 25919
		private static readonly IntPtr NativeFieldInfoPtr_baryPositions;

		// Token: 0x04006540 RID: 25920
		private static readonly IntPtr NativeFieldInfoPtr_baryNormals;

		// Token: 0x04006541 RID: 25921
		private static readonly IntPtr NativeFieldInfoPtr_baryTangents;

		// Token: 0x04006542 RID: 25922
		private static readonly IntPtr NativeFieldInfoPtr_sourceTopology;

		// Token: 0x04006543 RID: 25923
		private static readonly IntPtr NativeFieldInfoPtr_targetMesh;

		// Token: 0x04006544 RID: 25924
		private static readonly IntPtr NativeFieldInfoPtr_sourceSkinTransform;

		// Token: 0x04006545 RID: 25925
		private static readonly IntPtr NativeFieldInfoPtr_targetSkinTransform;

		// Token: 0x04006546 RID: 25926
		private static readonly IntPtr NativeMethodInfoPtr_set_SourceTopology_Public_set_Void_ObiMeshTopology_0;

		// Token: 0x04006547 RID: 25927
		private static readonly IntPtr NativeMethodInfoPtr_get_SourceTopology_Public_get_ObiMeshTopology_0;

		// Token: 0x04006548 RID: 25928
		private static readonly IntPtr NativeMethodInfoPtr_set_TargetMesh_Public_set_Void_Mesh_0;

		// Token: 0x04006549 RID: 25929
		private static readonly IntPtr NativeMethodInfoPtr_get_TargetMesh_Public_get_Mesh_0;

		// Token: 0x0400654A RID: 25930
		private static readonly IntPtr NativeMethodInfoPtr_get_TriangleSkinMap_Public_get_IntPtr_0;

		// Token: 0x0400654B RID: 25931
		private static readonly IntPtr NativeMethodInfoPtr_ValidateMasterFlags_Private_Void_Boolean_0;

		// Token: 0x0400654C RID: 25932
		private static readonly IntPtr NativeMethodInfoPtr_ValidateSlaveFlags_Private_Void_Boolean_0;

		// Token: 0x0400654D RID: 25933
		private static readonly IntPtr NativeMethodInfoPtr_OnEnable_Public_Void_0;

		// Token: 0x0400654E RID: 25934
		private static readonly IntPtr NativeMethodInfoPtr_Bind_Public_Void_Transform_Transform_0;

		// Token: 0x0400654F RID: 25935
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x02000536 RID: 1334
		[Serializable]
		[StructLayout(2)]
		public struct SkinTransform
		{
			// Token: 0x060097E6 RID: 38886 RVA: 0x00271AD8 File Offset: 0x0026FCD8
			[CallerCount(4)]
			[CachedScanResults(RefRangeStart = 643591, RefRangeEnd = 643595, XrefRangeStart = 643591, XrefRangeEnd = 643591, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe SkinTransform(Vector3 position, Quaternion rotation, Vector3 scale)
			{
				IntPtr* ptr;
				checked
				{
					ptr = stackalloc IntPtr[unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref position;
				}
				ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref rotation;
				ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref scale;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.SkinTransform.NativeMethodInfoPtr__ctor_Public_Void_Vector3_Quaternion_Vector3_0, ref this, (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x060097E7 RID: 38887 RVA: 0x00271B44 File Offset: 0x0026FD44
			[CallerCount(2)]
			[CachedScanResults(RefRangeStart = 643598, RefRangeEnd = 643600, XrefRangeStart = 643595, XrefRangeEnd = 643598, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe SkinTransform(Transform transform)
			{
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(transform);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.SkinTransform.NativeMethodInfoPtr__ctor_Public_Void_Transform_0, ref this, (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x060097E8 RID: 38888 RVA: 0x00271B90 File Offset: 0x0026FD90
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 643600, XrefRangeEnd = 643603, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void Apply(Transform transform)
			{
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(transform);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiTriangleSkinMap.SkinTransform.NativeMethodInfoPtr_Apply_Public_Void_Transform_0, ref this, (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x060097E9 RID: 38889 RVA: 0x00271BDC File Offset: 0x0026FDDC
			// Note: this type is marked as 'beforefieldinit'.
			static SkinTransform()
			{
				Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<ObiTriangleSkinMap>.NativeClassPtr, "SkinTransform");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr);
				ObiTriangleSkinMap.SkinTransform.NativeFieldInfoPtr_position = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr, "position");
				ObiTriangleSkinMap.SkinTransform.NativeFieldInfoPtr_rotation = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr, "rotation");
				ObiTriangleSkinMap.SkinTransform.NativeFieldInfoPtr_scale = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr, "scale");
				ObiTriangleSkinMap.SkinTransform.NativeMethodInfoPtr__ctor_Public_Void_Vector3_Quaternion_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr, 100675128);
				ObiTriangleSkinMap.SkinTransform.NativeMethodInfoPtr__ctor_Public_Void_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr, 100675129);
				ObiTriangleSkinMap.SkinTransform.NativeMethodInfoPtr_Apply_Public_Void_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr, 100675130);
			}

			// Token: 0x060097EA RID: 38890 RVA: 0x00271C7F File Offset: 0x0026FE7F
			public Il2CppSystem.Object BoxIl2CppObject()
			{
				return new Il2CppSystem.Object(IL2CPP.il2cpp_value_box(Il2CppClassPointerStore<ObiTriangleSkinMap.SkinTransform>.NativeClassPtr, ref this));
			}

			// Token: 0x04006550 RID: 25936
			private static readonly IntPtr NativeFieldInfoPtr_position;

			// Token: 0x04006551 RID: 25937
			private static readonly IntPtr NativeFieldInfoPtr_rotation;

			// Token: 0x04006552 RID: 25938
			private static readonly IntPtr NativeFieldInfoPtr_scale;

			// Token: 0x04006553 RID: 25939
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Vector3_Quaternion_Vector3_0;

			// Token: 0x04006554 RID: 25940
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Transform_0;

			// Token: 0x04006555 RID: 25941
			private static readonly IntPtr NativeMethodInfoPtr_Apply_Public_Void_Transform_0;

			// Token: 0x04006556 RID: 25942
			[FieldOffset(0)]
			public Vector3 position;

			// Token: 0x04006557 RID: 25943
			[FieldOffset(12)]
			public Quaternion rotation;

			// Token: 0x04006558 RID: 25944
			[FieldOffset(28)]
			public Vector3 scale;
		}
	}
}
