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

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x02000639 RID: 1593
	public class SunShafts : PostEffectsBase
	{
		// Token: 0x0600A574 RID: 42356 RVA: 0x002A6E84 File Offset: 0x002A5084
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 654124, XrefRangeEnd = 654130, 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), SunShafts.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x0600A575 RID: 42357 RVA: 0x002A6EE0 File Offset: 0x002A50E0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 654130, XrefRangeEnd = 654218, 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(SunShafts.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600A576 RID: 42358 RVA: 0x002A6F54 File Offset: 0x002A5154
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 654218, XrefRangeEnd = 654221, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe SunShafts()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<SunShafts>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SunShafts.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600A577 RID: 42359 RVA: 0x002A6FA0 File Offset: 0x002A51A0
		// Note: this type is marked as 'beforefieldinit'.
		static SunShafts()
		{
			Il2CppClassPointerStore<SunShafts>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityStandardAssets.ImageEffects", "SunShafts");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<SunShafts>.NativeClassPtr);
			SunShafts.NativeFieldInfoPtr_resolution = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "resolution");
			SunShafts.NativeFieldInfoPtr_screenBlendMode = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "screenBlendMode");
			SunShafts.NativeFieldInfoPtr_sunTransform = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "sunTransform");
			SunShafts.NativeFieldInfoPtr_radialBlurIterations = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "radialBlurIterations");
			SunShafts.NativeFieldInfoPtr_sunColor = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "sunColor");
			SunShafts.NativeFieldInfoPtr_sunThreshold = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "sunThreshold");
			SunShafts.NativeFieldInfoPtr_sunShaftBlurRadius = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "sunShaftBlurRadius");
			SunShafts.NativeFieldInfoPtr_sunShaftIntensity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "sunShaftIntensity");
			SunShafts.NativeFieldInfoPtr_maxRadius = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "maxRadius");
			SunShafts.NativeFieldInfoPtr_useDepthTexture = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "useDepthTexture");
			SunShafts.NativeFieldInfoPtr_sunShaftsShader = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "sunShaftsShader");
			SunShafts.NativeFieldInfoPtr_sunShaftsMaterial = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "sunShaftsMaterial");
			SunShafts.NativeFieldInfoPtr_simpleClearShader = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "simpleClearShader");
			SunShafts.NativeFieldInfoPtr_simpleClearMaterial = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, "simpleClearMaterial");
			SunShafts.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, 100676127);
			SunShafts.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, 100676128);
			SunShafts.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SunShafts>.NativeClassPtr, 100676129);
		}

		// Token: 0x0600A578 RID: 42360 RVA: 0x00298C00 File Offset: 0x00296E00
		public SunShafts(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x170037F0 RID: 14320
		// (get) Token: 0x0600A579 RID: 42361 RVA: 0x002A7124 File Offset: 0x002A5324
		// (set) Token: 0x0600A57A RID: 42362 RVA: 0x002A714C File Offset: 0x002A534C
		public unsafe SunShafts.SunShaftsResolution resolution
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_resolution);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_resolution)) = value;
			}
		}

		// Token: 0x170037F1 RID: 14321
		// (get) Token: 0x0600A57B RID: 42363 RVA: 0x002A7170 File Offset: 0x002A5370
		// (set) Token: 0x0600A57C RID: 42364 RVA: 0x002A7198 File Offset: 0x002A5398
		public unsafe SunShafts.ShaftsScreenBlendMode screenBlendMode
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_screenBlendMode);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_screenBlendMode)) = value;
			}
		}

		// Token: 0x170037F2 RID: 14322
		// (get) Token: 0x0600A57D RID: 42365 RVA: 0x002A71BC File Offset: 0x002A53BC
		// (set) Token: 0x0600A57E RID: 42366 RVA: 0x002A71F0 File Offset: 0x002A53F0
		public unsafe Transform sunTransform
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunTransform);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Transform(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunTransform), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170037F3 RID: 14323
		// (get) Token: 0x0600A57F RID: 42367 RVA: 0x002A7218 File Offset: 0x002A5418
		// (set) Token: 0x0600A580 RID: 42368 RVA: 0x002A7240 File Offset: 0x002A5440
		public unsafe int radialBlurIterations
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_radialBlurIterations);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_radialBlurIterations)) = value;
			}
		}

		// Token: 0x170037F4 RID: 14324
		// (get) Token: 0x0600A581 RID: 42369 RVA: 0x002A7264 File Offset: 0x002A5464
		// (set) Token: 0x0600A582 RID: 42370 RVA: 0x002A728C File Offset: 0x002A548C
		public unsafe Color sunColor
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunColor);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunColor)) = value;
			}
		}

		// Token: 0x170037F5 RID: 14325
		// (get) Token: 0x0600A583 RID: 42371 RVA: 0x002A72B0 File Offset: 0x002A54B0
		// (set) Token: 0x0600A584 RID: 42372 RVA: 0x002A72D8 File Offset: 0x002A54D8
		public unsafe Color sunThreshold
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunThreshold);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunThreshold)) = value;
			}
		}

		// Token: 0x170037F6 RID: 14326
		// (get) Token: 0x0600A585 RID: 42373 RVA: 0x002A72FC File Offset: 0x002A54FC
		// (set) Token: 0x0600A586 RID: 42374 RVA: 0x002A7324 File Offset: 0x002A5524
		public unsafe float sunShaftBlurRadius
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunShaftBlurRadius);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunShaftBlurRadius)) = value;
			}
		}

		// Token: 0x170037F7 RID: 14327
		// (get) Token: 0x0600A587 RID: 42375 RVA: 0x002A7348 File Offset: 0x002A5548
		// (set) Token: 0x0600A588 RID: 42376 RVA: 0x002A7370 File Offset: 0x002A5570
		public unsafe float sunShaftIntensity
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunShaftIntensity);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunShaftIntensity)) = value;
			}
		}

		// Token: 0x170037F8 RID: 14328
		// (get) Token: 0x0600A589 RID: 42377 RVA: 0x002A7394 File Offset: 0x002A5594
		// (set) Token: 0x0600A58A RID: 42378 RVA: 0x002A73BC File Offset: 0x002A55BC
		public unsafe float maxRadius
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_maxRadius);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_maxRadius)) = value;
			}
		}

		// Token: 0x170037F9 RID: 14329
		// (get) Token: 0x0600A58B RID: 42379 RVA: 0x002A73E0 File Offset: 0x002A55E0
		// (set) Token: 0x0600A58C RID: 42380 RVA: 0x002A7408 File Offset: 0x002A5608
		public unsafe bool useDepthTexture
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_useDepthTexture);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_useDepthTexture)) = value;
			}
		}

		// Token: 0x170037FA RID: 14330
		// (get) Token: 0x0600A58D RID: 42381 RVA: 0x002A742C File Offset: 0x002A562C
		// (set) Token: 0x0600A58E RID: 42382 RVA: 0x002A7460 File Offset: 0x002A5660
		public unsafe Shader sunShaftsShader
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunShaftsShader);
				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(SunShafts.NativeFieldInfoPtr_sunShaftsShader), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170037FB RID: 14331
		// (get) Token: 0x0600A58F RID: 42383 RVA: 0x002A7488 File Offset: 0x002A5688
		// (set) Token: 0x0600A590 RID: 42384 RVA: 0x002A74BC File Offset: 0x002A56BC
		public unsafe Material sunShaftsMaterial
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_sunShaftsMaterial);
				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(SunShafts.NativeFieldInfoPtr_sunShaftsMaterial), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170037FC RID: 14332
		// (get) Token: 0x0600A591 RID: 42385 RVA: 0x002A74E4 File Offset: 0x002A56E4
		// (set) Token: 0x0600A592 RID: 42386 RVA: 0x002A7518 File Offset: 0x002A5718
		public unsafe Shader simpleClearShader
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_simpleClearShader);
				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(SunShafts.NativeFieldInfoPtr_simpleClearShader), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170037FD RID: 14333
		// (get) Token: 0x0600A593 RID: 42387 RVA: 0x002A7540 File Offset: 0x002A5740
		// (set) Token: 0x0600A594 RID: 42388 RVA: 0x002A7574 File Offset: 0x002A5774
		public unsafe Material simpleClearMaterial
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SunShafts.NativeFieldInfoPtr_simpleClearMaterial);
				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(SunShafts.NativeFieldInfoPtr_simpleClearMaterial), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x04006EF4 RID: 28404
		private static readonly IntPtr NativeFieldInfoPtr_resolution;

		// Token: 0x04006EF5 RID: 28405
		private static readonly IntPtr NativeFieldInfoPtr_screenBlendMode;

		// Token: 0x04006EF6 RID: 28406
		private static readonly IntPtr NativeFieldInfoPtr_sunTransform;

		// Token: 0x04006EF7 RID: 28407
		private static readonly IntPtr NativeFieldInfoPtr_radialBlurIterations;

		// Token: 0x04006EF8 RID: 28408
		private static readonly IntPtr NativeFieldInfoPtr_sunColor;

		// Token: 0x04006EF9 RID: 28409
		private static readonly IntPtr NativeFieldInfoPtr_sunThreshold;

		// Token: 0x04006EFA RID: 28410
		private static readonly IntPtr NativeFieldInfoPtr_sunShaftBlurRadius;

		// Token: 0x04006EFB RID: 28411
		private static readonly IntPtr NativeFieldInfoPtr_sunShaftIntensity;

		// Token: 0x04006EFC RID: 28412
		private static readonly IntPtr NativeFieldInfoPtr_maxRadius;

		// Token: 0x04006EFD RID: 28413
		private static readonly IntPtr NativeFieldInfoPtr_useDepthTexture;

		// Token: 0x04006EFE RID: 28414
		private static readonly IntPtr NativeFieldInfoPtr_sunShaftsShader;

		// Token: 0x04006EFF RID: 28415
		private static readonly IntPtr NativeFieldInfoPtr_sunShaftsMaterial;

		// Token: 0x04006F00 RID: 28416
		private static readonly IntPtr NativeFieldInfoPtr_simpleClearShader;

		// Token: 0x04006F01 RID: 28417
		private static readonly IntPtr NativeFieldInfoPtr_simpleClearMaterial;

		// Token: 0x04006F02 RID: 28418
		private static readonly IntPtr NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0;

		// Token: 0x04006F03 RID: 28419
		private static readonly IntPtr NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x04006F04 RID: 28420
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x0200063A RID: 1594
		public enum SunShaftsResolution
		{
			// Token: 0x04006F06 RID: 28422
			Low,
			// Token: 0x04006F07 RID: 28423
			Normal,
			// Token: 0x04006F08 RID: 28424
			High
		}

		// Token: 0x0200063B RID: 1595
		public enum ShaftsScreenBlendMode
		{
			// Token: 0x04006F0A RID: 28426
			Screen,
			// Token: 0x04006F0B RID: 28427
			Add
		}
	}
}
