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

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x020005D1 RID: 1489
	public class GlobalFog : PostEffectsBase
	{
		// Token: 0x06009C1B RID: 39963 RVA: 0x0027FF44 File Offset: 0x0027E144
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620684, XrefRangeEnd = 620688, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override bool CheckResources()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), GlobalFog.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x06009C1C RID: 39964 RVA: 0x0027FFA0 File Offset: 0x0027E1A0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620688, XrefRangeEnd = 620750, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnRenderImage(RenderTexture source, RenderTexture destination)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(source);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(destination);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(GlobalFog.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009C1D RID: 39965 RVA: 0x00280014 File Offset: 0x0027E214
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620750, XrefRangeEnd = 620751, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe GlobalFog()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(GlobalFog.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009C1E RID: 39966 RVA: 0x00280060 File Offset: 0x0027E260
		// Note: this type is marked as 'beforefieldinit'.
		static GlobalFog()
		{
			Il2CppClassPointerStore<GlobalFog>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityStandardAssets.ImageEffects", "GlobalFog");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr);
			GlobalFog.NativeFieldInfoPtr_distanceFog = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "distanceFog");
			GlobalFog.NativeFieldInfoPtr_excludeFarPixels = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "excludeFarPixels");
			GlobalFog.NativeFieldInfoPtr_useRadialDistance = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "useRadialDistance");
			GlobalFog.NativeFieldInfoPtr_heightFog = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "heightFog");
			GlobalFog.NativeFieldInfoPtr_height = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "height");
			GlobalFog.NativeFieldInfoPtr_heightDensity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "heightDensity");
			GlobalFog.NativeFieldInfoPtr_startDistance = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "startDistance");
			GlobalFog.NativeFieldInfoPtr_fogShader = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "fogShader");
			GlobalFog.NativeFieldInfoPtr_fogMaterial = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, "fogMaterial");
			GlobalFog.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, 100675342);
			GlobalFog.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, 100675343);
			GlobalFog.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<GlobalFog>.NativeClassPtr, 100675344);
		}

		// Token: 0x06009C1F RID: 39967 RVA: 0x00275EC4 File Offset: 0x002740C4
		public GlobalFog(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003501 RID: 13569
		// (get) Token: 0x06009C20 RID: 39968 RVA: 0x00280180 File Offset: 0x0027E380
		// (set) Token: 0x06009C21 RID: 39969 RVA: 0x002801A8 File Offset: 0x0027E3A8
		public unsafe bool distanceFog
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_distanceFog);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_distanceFog)) = value;
			}
		}

		// Token: 0x17003502 RID: 13570
		// (get) Token: 0x06009C22 RID: 39970 RVA: 0x002801CC File Offset: 0x0027E3CC
		// (set) Token: 0x06009C23 RID: 39971 RVA: 0x002801F4 File Offset: 0x0027E3F4
		public unsafe bool excludeFarPixels
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_excludeFarPixels);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_excludeFarPixels)) = value;
			}
		}

		// Token: 0x17003503 RID: 13571
		// (get) Token: 0x06009C24 RID: 39972 RVA: 0x00280218 File Offset: 0x0027E418
		// (set) Token: 0x06009C25 RID: 39973 RVA: 0x00280240 File Offset: 0x0027E440
		public unsafe bool useRadialDistance
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_useRadialDistance);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_useRadialDistance)) = value;
			}
		}

		// Token: 0x17003504 RID: 13572
		// (get) Token: 0x06009C26 RID: 39974 RVA: 0x00280264 File Offset: 0x0027E464
		// (set) Token: 0x06009C27 RID: 39975 RVA: 0x0028028C File Offset: 0x0027E48C
		public unsafe bool heightFog
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_heightFog);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_heightFog)) = value;
			}
		}

		// Token: 0x17003505 RID: 13573
		// (get) Token: 0x06009C28 RID: 39976 RVA: 0x002802B0 File Offset: 0x0027E4B0
		// (set) Token: 0x06009C29 RID: 39977 RVA: 0x002802D8 File Offset: 0x0027E4D8
		public unsafe float height
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_height);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_height)) = value;
			}
		}

		// Token: 0x17003506 RID: 13574
		// (get) Token: 0x06009C2A RID: 39978 RVA: 0x002802FC File Offset: 0x0027E4FC
		// (set) Token: 0x06009C2B RID: 39979 RVA: 0x00280324 File Offset: 0x0027E524
		public unsafe float heightDensity
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_heightDensity);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_heightDensity)) = value;
			}
		}

		// Token: 0x17003507 RID: 13575
		// (get) Token: 0x06009C2C RID: 39980 RVA: 0x00280348 File Offset: 0x0027E548
		// (set) Token: 0x06009C2D RID: 39981 RVA: 0x00280370 File Offset: 0x0027E570
		public unsafe float startDistance
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_startDistance);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_startDistance)) = value;
			}
		}

		// Token: 0x17003508 RID: 13576
		// (get) Token: 0x06009C2E RID: 39982 RVA: 0x00280394 File Offset: 0x0027E594
		// (set) Token: 0x06009C2F RID: 39983 RVA: 0x002803C8 File Offset: 0x0027E5C8
		public unsafe Shader fogShader
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_fogShader);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Shader(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_fogShader), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003509 RID: 13577
		// (get) Token: 0x06009C30 RID: 39984 RVA: 0x002803F0 File Offset: 0x0027E5F0
		// (set) Token: 0x06009C31 RID: 39985 RVA: 0x00280424 File Offset: 0x0027E624
		public unsafe Material fogMaterial
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_fogMaterial);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Material(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GlobalFog.NativeFieldInfoPtr_fogMaterial), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x040068A9 RID: 26793
		private static readonly IntPtr NativeFieldInfoPtr_distanceFog;

		// Token: 0x040068AA RID: 26794
		private static readonly IntPtr NativeFieldInfoPtr_excludeFarPixels;

		// Token: 0x040068AB RID: 26795
		private static readonly IntPtr NativeFieldInfoPtr_useRadialDistance;

		// Token: 0x040068AC RID: 26796
		private static readonly IntPtr NativeFieldInfoPtr_heightFog;

		// Token: 0x040068AD RID: 26797
		private static readonly IntPtr NativeFieldInfoPtr_height;

		// Token: 0x040068AE RID: 26798
		private static readonly IntPtr NativeFieldInfoPtr_heightDensity;

		// Token: 0x040068AF RID: 26799
		private static readonly IntPtr NativeFieldInfoPtr_startDistance;

		// Token: 0x040068B0 RID: 26800
		private static readonly IntPtr NativeFieldInfoPtr_fogShader;

		// Token: 0x040068B1 RID: 26801
		private static readonly IntPtr NativeFieldInfoPtr_fogMaterial;

		// Token: 0x040068B2 RID: 26802
		private static readonly IntPtr NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0;

		// Token: 0x040068B3 RID: 26803
		private static readonly IntPtr NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x040068B4 RID: 26804
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
