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

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x02000635 RID: 1589
	public class ScreenSpaceAmbientObscurance : PostEffectsBase
	{
		// Token: 0x0600A53A RID: 42298 RVA: 0x002A60C0 File Offset: 0x002A42C0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 653889, XrefRangeEnd = 653893, 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: 0x0600A53B RID: 42299 RVA: 0x002A611C File Offset: 0x002A431C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 653893, XrefRangeEnd = 653901, 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: 0x0600A53C RID: 42300 RVA: 0x002A6160 File Offset: 0x002A4360
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 653901, XrefRangeEnd = 653989, 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: 0x0600A53D RID: 42301 RVA: 0x002A61D4 File Offset: 0x002A43D4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 653989, XrefRangeEnd = 653990, 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: 0x0600A53E RID: 42302 RVA: 0x002A6220 File Offset: 0x002A4420
		// 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, 100676113);
			ScreenSpaceAmbientObscurance.NativeMethodInfoPtr_OnDisable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, 100676114);
			ScreenSpaceAmbientObscurance.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, 100676115);
			ScreenSpaceAmbientObscurance.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ScreenSpaceAmbientObscurance>.NativeClassPtr, 100676116);
		}

		// Token: 0x0600A53F RID: 42303 RVA: 0x00298C00 File Offset: 0x00296E00
		public ScreenSpaceAmbientObscurance(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x170037DD RID: 14301
		// (get) Token: 0x0600A540 RID: 42304 RVA: 0x002A6340 File Offset: 0x002A4540
		// (set) Token: 0x0600A541 RID: 42305 RVA: 0x002A6368 File Offset: 0x002A4568
		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: 0x170037DE RID: 14302
		// (get) Token: 0x0600A542 RID: 42306 RVA: 0x002A638C File Offset: 0x002A458C
		// (set) Token: 0x0600A543 RID: 42307 RVA: 0x002A63B4 File Offset: 0x002A45B4
		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: 0x170037DF RID: 14303
		// (get) Token: 0x0600A544 RID: 42308 RVA: 0x002A63D8 File Offset: 0x002A45D8
		// (set) Token: 0x0600A545 RID: 42309 RVA: 0x002A6400 File Offset: 0x002A4600
		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: 0x170037E0 RID: 14304
		// (get) Token: 0x0600A546 RID: 42310 RVA: 0x002A6424 File Offset: 0x002A4624
		// (set) Token: 0x0600A547 RID: 42311 RVA: 0x002A644C File Offset: 0x002A464C
		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: 0x170037E1 RID: 14305
		// (get) Token: 0x0600A548 RID: 42312 RVA: 0x002A6470 File Offset: 0x002A4670
		// (set) Token: 0x0600A549 RID: 42313 RVA: 0x002A6498 File Offset: 0x002A4698
		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: 0x170037E2 RID: 14306
		// (get) Token: 0x0600A54A RID: 42314 RVA: 0x002A64BC File Offset: 0x002A46BC
		// (set) Token: 0x0600A54B RID: 42315 RVA: 0x002A64F0 File Offset: 0x002A46F0
		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: 0x170037E3 RID: 14307
		// (get) Token: 0x0600A54C RID: 42316 RVA: 0x002A6518 File Offset: 0x002A4718
		// (set) Token: 0x0600A54D RID: 42317 RVA: 0x002A654C File Offset: 0x002A474C
		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: 0x170037E4 RID: 14308
		// (get) Token: 0x0600A54E RID: 42318 RVA: 0x002A6574 File Offset: 0x002A4774
		// (set) Token: 0x0600A54F RID: 42319 RVA: 0x002A65A8 File Offset: 0x002A47A8
		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: 0x04006ECF RID: 28367
		private static readonly IntPtr NativeFieldInfoPtr_intensity;

		// Token: 0x04006ED0 RID: 28368
		private static readonly IntPtr NativeFieldInfoPtr_radius;

		// Token: 0x04006ED1 RID: 28369
		private static readonly IntPtr NativeFieldInfoPtr_blurIterations;

		// Token: 0x04006ED2 RID: 28370
		private static readonly IntPtr NativeFieldInfoPtr_blurFilterDistance;

		// Token: 0x04006ED3 RID: 28371
		private static readonly IntPtr NativeFieldInfoPtr_downsample;

		// Token: 0x04006ED4 RID: 28372
		private static readonly IntPtr NativeFieldInfoPtr_rand;

		// Token: 0x04006ED5 RID: 28373
		private static readonly IntPtr NativeFieldInfoPtr_aoShader;

		// Token: 0x04006ED6 RID: 28374
		private static readonly IntPtr NativeFieldInfoPtr_aoMaterial;

		// Token: 0x04006ED7 RID: 28375
		private static readonly IntPtr NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0;

		// Token: 0x04006ED8 RID: 28376
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Private_Void_0;

		// Token: 0x04006ED9 RID: 28377
		private static readonly IntPtr NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x04006EDA RID: 28378
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
