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

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x020005DD RID: 1501
	public class ScreenSpaceAmbientObscurance : PostEffectsBase
	{
		// Token: 0x06009CE7 RID: 40167 RVA: 0x00283384 File Offset: 0x00281584
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 621587, XrefRangeEnd = 621591, 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), ScreenSpaceAmbientObscurance.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x06009CE8 RID: 40168 RVA: 0x002833E0 File Offset: 0x002815E0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 621591, XrefRangeEnd = 621599, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ScreenSpaceAmbientObscurance.NativeMethodInfoPtr_OnDisable_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009CE9 RID: 40169 RVA: 0x00283424 File Offset: 0x00281624
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 621599, XrefRangeEnd = 621687, 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(ScreenSpaceAmbientObscurance.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009CEA RID: 40170 RVA: 0x00283498 File Offset: 0x00281698
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 621687, XrefRangeEnd = 621688, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ScreenSpaceAmbientObscurance()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ScreenSpaceAmbientObscurance.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009CEB RID: 40171 RVA: 0x002834E4 File Offset: 0x002816E4
		// Note: this type is marked as 'beforefieldinit'.
		static ScreenSpaceAmbientObscurance()
		{
			Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityStandardAssets.ImageEffects", "ScreenSpaceAmbientObscurance");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr);
			ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_intensity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, "intensity");
			ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_radius = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, "radius");
			ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_blurIterations = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, "blurIterations");
			ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_blurFilterDistance = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, "blurFilterDistance");
			ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_downsample = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, "downsample");
			ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_rand = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, "rand");
			ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_aoShader = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, "aoShader");
			ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_aoMaterial = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, "aoMaterial");
			ScreenSpaceAmbientObscurance.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, 100675400);
			ScreenSpaceAmbientObscurance.NativeMethodInfoPtr_OnDisable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, 100675401);
			ScreenSpaceAmbientObscurance.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, 100675402);
			ScreenSpaceAmbientObscurance.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, 100675403);
		}

		// Token: 0x06009CEC RID: 40172 RVA: 0x00275EC4 File Offset: 0x002740C4
		public ScreenSpaceAmbientObscurance(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003542 RID: 13634
		// (get) Token: 0x06009CED RID: 40173 RVA: 0x00283604 File Offset: 0x00281804
		// (set) Token: 0x06009CEE RID: 40174 RVA: 0x0028362C File Offset: 0x0028182C
		public unsafe float intensity
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_intensity);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_intensity)) = value;
			}
		}

		// Token: 0x17003543 RID: 13635
		// (get) Token: 0x06009CEF RID: 40175 RVA: 0x00283650 File Offset: 0x00281850
		// (set) Token: 0x06009CF0 RID: 40176 RVA: 0x00283678 File Offset: 0x00281878
		public unsafe float radius
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_radius);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_radius)) = value;
			}
		}

		// Token: 0x17003544 RID: 13636
		// (get) Token: 0x06009CF1 RID: 40177 RVA: 0x0028369C File Offset: 0x0028189C
		// (set) Token: 0x06009CF2 RID: 40178 RVA: 0x002836C4 File Offset: 0x002818C4
		public unsafe int blurIterations
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_blurIterations);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_blurIterations)) = value;
			}
		}

		// Token: 0x17003545 RID: 13637
		// (get) Token: 0x06009CF3 RID: 40179 RVA: 0x002836E8 File Offset: 0x002818E8
		// (set) Token: 0x06009CF4 RID: 40180 RVA: 0x00283710 File Offset: 0x00281910
		public unsafe float blurFilterDistance
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_blurFilterDistance);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_blurFilterDistance)) = value;
			}
		}

		// Token: 0x17003546 RID: 13638
		// (get) Token: 0x06009CF5 RID: 40181 RVA: 0x00283734 File Offset: 0x00281934
		// (set) Token: 0x06009CF6 RID: 40182 RVA: 0x0028375C File Offset: 0x0028195C
		public unsafe int downsample
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_downsample);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_downsample)) = value;
			}
		}

		// Token: 0x17003547 RID: 13639
		// (get) Token: 0x06009CF7 RID: 40183 RVA: 0x00283780 File Offset: 0x00281980
		// (set) Token: 0x06009CF8 RID: 40184 RVA: 0x002837B4 File Offset: 0x002819B4
		public unsafe Texture2D rand
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_rand);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Texture2D(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_rand), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003548 RID: 13640
		// (get) Token: 0x06009CF9 RID: 40185 RVA: 0x002837DC File Offset: 0x002819DC
		// (set) Token: 0x06009CFA RID: 40186 RVA: 0x00283810 File Offset: 0x00281A10
		public unsafe Shader aoShader
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_aoShader);
				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(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_aoShader), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003549 RID: 13641
		// (get) Token: 0x06009CFB RID: 40187 RVA: 0x00283838 File Offset: 0x00281A38
		// (set) Token: 0x06009CFC RID: 40188 RVA: 0x0028386C File Offset: 0x00281A6C
		public unsafe Material aoMaterial
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_aoMaterial);
				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(ScreenSpaceAmbientObscurance.NativeFieldInfoPtr_aoMaterial), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x04006926 RID: 26918
		private static readonly IntPtr NativeFieldInfoPtr_intensity;

		// Token: 0x04006927 RID: 26919
		private static readonly IntPtr NativeFieldInfoPtr_radius;

		// Token: 0x04006928 RID: 26920
		private static readonly IntPtr NativeFieldInfoPtr_blurIterations;

		// Token: 0x04006929 RID: 26921
		private static readonly IntPtr NativeFieldInfoPtr_blurFilterDistance;

		// Token: 0x0400692A RID: 26922
		private static readonly IntPtr NativeFieldInfoPtr_downsample;

		// Token: 0x0400692B RID: 26923
		private static readonly IntPtr NativeFieldInfoPtr_rand;

		// Token: 0x0400692C RID: 26924
		private static readonly IntPtr NativeFieldInfoPtr_aoShader;

		// Token: 0x0400692D RID: 26925
		private static readonly IntPtr NativeFieldInfoPtr_aoMaterial;

		// Token: 0x0400692E RID: 26926
		private static readonly IntPtr NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0;

		// Token: 0x0400692F RID: 26927
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Private_Void_0;

		// Token: 0x04006930 RID: 26928
		private static readonly IntPtr NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x04006931 RID: 26929
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
