using System;
using Cpp2IlInjected;
using UnityEngine;

// Token: 0x0200037B RID: 891
[Token(Token = "0x200037B")]
public class WaterReflection : MonoBehaviour
{
	// Token: 0x060021CB RID: 8651 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60021CB")]
	[Address(RVA = "0x93FCB0", Offset = "0x93EAB0", VA = "0x18093FCB0")]
	public void Awake()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060021CC RID: 8652 RVA: 0x0004ED6C File Offset: 0x0004CF6C
	[Token(Token = "0x60021CC")]
	[Address(RVA = "0x940110", Offset = "0x93EF10", VA = "0x180940110")]
	private void Update()
	{
		if (this.isReady)
		{
			this.RenderReflection();
			return;
		}
	}

	// Token: 0x060021CD RID: 8653 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60021CD")]
	[Address(RVA = "0x93FE40", Offset = "0x93EC40", VA = "0x18093FE40")]
	private void RenderReflection()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060021CE RID: 8654 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60021CE")]
	[Address(RVA = "0x940120", Offset = "0x93EF20", VA = "0x180940120")]
	private void Validate()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060021CF RID: 8655 RVA: 0x0004ED8C File Offset: 0x0004CF8C
	[Token(Token = "0x60021CF")]
	[Address(RVA = "0x3088F0", Offset = "0x3076F0", VA = "0x1803088F0")]
	public WaterReflection()
	{
	}

	// Token: 0x04002B1D RID: 11037
	[FieldOffset(Offset = "0x18")]
	[Token(Token = "0x4002B1D")]
	private Camera mainCamera;

	// Token: 0x04002B1E RID: 11038
	[FieldOffset(Offset = "0x20")]
	[Token(Token = "0x4002B1E")]
	private Camera reflectionCamera;

	// Token: 0x04002B1F RID: 11039
	[FieldOffset(Offset = "0x28")]
	[Token(Token = "0x4002B1F")]
	[Tooltip("The plane where the camera will be reflected, the water plane or any object with the same position and rotation")]
	public Transform reflectionPlane;

	// Token: 0x04002B20 RID: 11040
	[FieldOffset(Offset = "0x30")]
	[Token(Token = "0x4002B20")]
	[Tooltip("The texture used by the Water shader to display the reflection")]
	public RenderTexture outputTexture;

	// Token: 0x04002B21 RID: 11041
	[FieldOffset(Offset = "0x38")]
	[Token(Token = "0x4002B21")]
	public bool copyCameraParamerers;

	// Token: 0x04002B22 RID: 11042
	[FieldOffset(Offset = "0x3C")]
	[Token(Token = "0x4002B22")]
	public float verticalOffset;

	// Token: 0x04002B23 RID: 11043
	[FieldOffset(Offset = "0x40")]
	[Token(Token = "0x4002B23")]
	private bool isReady;

	// Token: 0x04002B24 RID: 11044
	[FieldOffset(Offset = "0x48")]
	[Token(Token = "0x4002B24")]
	private Transform mainCamTransform;

	// Token: 0x04002B25 RID: 11045
	[FieldOffset(Offset = "0x50")]
	[Token(Token = "0x4002B25")]
	private Transform reflectionCamTransform;
}
