using System;
using Cpp2IlInjected;
using UnityEngine;

namespace Obi
{
	// Token: 0x0200052B RID: 1323
	[Token(Token = "0x200052B")]
	public class ObiEmitterMaterialFluid : ObiEmitterMaterial
	{
		// Token: 0x06002E43 RID: 11843 RVA: 0x00065110 File Offset: 0x00063310
		[Token(Token = "0x6002E43")]
		[Address(RVA = "0x10A2370", Offset = "0x10A1370", VA = "0x1810A2370")]
		public void OnValidate()
		{
			float resolution = this.resolution;
			float num = Mathf.Max(0.001f, resolution);
			float restDensity = this.restDensity;
			this.resolution = num;
			float num2 = Mathf.Max(0.001f, restDensity);
			float num3 = this.smoothing;
			this.restDensity = num2;
			float num4 = Mathf.Max(1f, num3);
			float num5 = this.viscosity;
			this.smoothing = num4;
			float num6 = Mathf.Max((float)0, num5);
			float num7 = this.atmosphericDrag;
			this.viscosity = num6;
			float num8 = Mathf.Max((float)0, num7);
			this.atmosphericDrag = num8;
		}

		// Token: 0x06002E44 RID: 11844 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002E44")]
		[Address(RVA = "0x10A22D0", Offset = "0x10A12D0", VA = "0x1810A22D0", Slot = "4")]
		public override Oni.FluidMaterial GetEquivalentOniMaterial(Oni.SolverParameters.Mode mode)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002E45 RID: 11845 RVA: 0x000651A4 File Offset: 0x000633A4
		[Token(Token = "0x6002E45")]
		[Address(RVA = "0x10A2400", Offset = "0x10A1400", VA = "0x1810A2400")]
		public ObiEmitterMaterialFluid()
		{
			this.resolution = 1f;
			this.restDensity = 1000f;
			base..ctor();
		}

		// Token: 0x040036DA RID: 14042
		[FieldOffset(Offset = "0x28")]
		[Token(Token = "0x40036DA")]
		public float smoothing = 1.5f;

		// Token: 0x040036DB RID: 14043
		[FieldOffset(Offset = "0x2C")]
		[Token(Token = "0x40036DB")]
		public float viscosity = 0.05f;

		// Token: 0x040036DC RID: 14044
		[FieldOffset(Offset = "0x30")]
		[Token(Token = "0x40036DC")]
		public float surfaceTension = 0.1f;

		// Token: 0x040036DD RID: 14045
		[FieldOffset(Offset = "0x34")]
		[Token(Token = "0x40036DD")]
		public float buoyancy = -1f;

		// Token: 0x040036DE RID: 14046
		[FieldOffset(Offset = "0x38")]
		[Token(Token = "0x40036DE")]
		public float atmosphericDrag;

		// Token: 0x040036DF RID: 14047
		[FieldOffset(Offset = "0x3C")]
		[Token(Token = "0x40036DF")]
		public float atmosphericPressure;

		// Token: 0x040036E0 RID: 14048
		[FieldOffset(Offset = "0x40")]
		[Token(Token = "0x40036E0")]
		public float vorticity;
	}
}
