253 lines
7.5 KiB
C#
253 lines
7.5 KiB
C#
using System;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Core;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Content.VFX
|
|
{
|
|
// Token: 0x0200274A RID: 10058
|
|
[Token(Token = "0x200274A")]
|
|
[ExecuteInEditMode]
|
|
[RequireComponent(typeof(Light))]
|
|
public class WaterCausticsLight : MonoBehaviour
|
|
{
|
|
// Token: 0x0601052E RID: 66862 RVA: 0x003AE510 File Offset: 0x003AC710
|
|
[Token(Token = "0x601052E")]
|
|
[Address(RVA = "0x1ECCFF0", Offset = "0x1ECBFF0", VA = "0x181ECCFF0")]
|
|
private void Start()
|
|
{
|
|
Light component = base.GetComponent<Light>();
|
|
this.KOBMAHGNLDC = component;
|
|
if (component.type == LightType.Directional)
|
|
{
|
|
Material material = new Material(this.causticsShader);
|
|
this.IDANKLAHBBD = material;
|
|
return;
|
|
}
|
|
Debug.LogWarning("WaterCausticsLight only works with Directional lights. Disabling effect.", this);
|
|
int num = 0;
|
|
base.enabled = num != 0;
|
|
}
|
|
|
|
// Token: 0x0601052F RID: 66863 RVA: 0x003AE564 File Offset: 0x003AC764
|
|
[Token(Token = "0x601052F")]
|
|
[Address(RVA = "0x1ECD0D0", Offset = "0x1ECC0D0", VA = "0x181ECD0D0")]
|
|
private void Update()
|
|
{
|
|
if (this.alphaMap && this.cookie && this.IDANKLAHBBD)
|
|
{
|
|
int num = 0;
|
|
CameraRig instance = SingletonMonoBehaviour.ONCPNMDGGKG;
|
|
int num2 = 0;
|
|
if (instance != num2)
|
|
{
|
|
Transform transform = SingletonMonoBehaviour.ONCPNMDGGKG.CHLMFLCFGFL.transform;
|
|
}
|
|
if (num && this.useHeightBlend)
|
|
{
|
|
Transform transform2 = base.transform;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
Transform transform3 = base.transform;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
Vector3 vector3;
|
|
float z3 = vector3.z;
|
|
Color color = this.heightBlendStartLightColor;
|
|
Light kobmahgnldc = this.KOBMAHGNLDC;
|
|
Color color2 = this.heightBlendEndLightColor;
|
|
}
|
|
Light kobmahgnldc2 = this.KOBMAHGNLDC;
|
|
RenderTexture renderTexture = this.cookie;
|
|
kobmahgnldc2.cookie = renderTexture;
|
|
Vector2 vector4 = this.alphaSpeed;
|
|
this.JIIHEKOMFJP = vector4;
|
|
float y = this.alphaSpeed.y;
|
|
this.JIIHEKOMFJP.y = y;
|
|
Vector2 vector5 = this.distortSpeed;
|
|
this.JIIHEKOMFJP.z = vector5;
|
|
float y2 = this.distortSpeed.y;
|
|
this.JIIHEKOMFJP.w = y2;
|
|
Material idanklahbbd = this.IDANKLAHBBD;
|
|
Texture texture = this.displacementNormals;
|
|
int ghbgcbcelfe = WaterCausticsLight.GHBGCBCELFE;
|
|
idanklahbbd.SetTextureImpl(ghbgcbcelfe, texture);
|
|
Material idanklahbbd2 = this.IDANKLAHBBD;
|
|
float num3 = this.distortAmount;
|
|
int bbjnkgcikkn = WaterCausticsLight.BBJNKGCIKKN;
|
|
idanklahbbd2.SetFloatImpl(bbjnkgcikkn, num3);
|
|
Material idanklahbbd3 = this.IDANKLAHBBD;
|
|
Vector4 jiihekomfjp = this.JIIHEKOMFJP;
|
|
int kgcfgnhhejd = WaterCausticsLight.KGCFGNHHEJD;
|
|
idanklahbbd3.SetVector(kgcfgnhhejd, jiihekomfjp);
|
|
Material idanklahbbd4 = this.IDANKLAHBBD;
|
|
int chfdeoknkgi = WaterCausticsLight.CHFDEOKNKGI;
|
|
idanklahbbd4.SetFloatImpl(chfdeoknkgi, num3);
|
|
Texture texture2 = this.alphaMap;
|
|
RenderTexture renderTexture2 = this.cookie;
|
|
Material idanklahbbd5 = this.IDANKLAHBBD;
|
|
Graphics.Blit(texture2, renderTexture2, idanklahbbd5);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06010530 RID: 66864 RVA: 0x003AE738 File Offset: 0x003AC938
|
|
[Token(Token = "0x6010530")]
|
|
[Address(RVA = "0x1ECCBD0", Offset = "0x1ECBBD0", VA = "0x181ECCBD0")]
|
|
private void OnDestroy()
|
|
{
|
|
OMCHJHPFBDN.KBFLHNONOHF(this.IDANKLAHBBD);
|
|
}
|
|
|
|
// Token: 0x06010531 RID: 66865 RVA: 0x003AE750 File Offset: 0x003AC950
|
|
[Token(Token = "0x6010531")]
|
|
[Address(RVA = "0x1ECCBE0", Offset = "0x1ECBBE0", VA = "0x181ECCBE0")]
|
|
private void OnDrawGizmosSelected()
|
|
{
|
|
int num = 0;
|
|
if ((this.useHeightBlend ? 1 : 0) != num)
|
|
{
|
|
Transform transform = base.transform;
|
|
Transform transform2 = base.transform;
|
|
Transform transform3 = base.transform;
|
|
Transform transform4 = base.transform;
|
|
Transform transform5 = base.transform;
|
|
Transform transform6 = base.transform;
|
|
Transform transform7 = base.transform;
|
|
Transform transform8 = base.transform;
|
|
Color red = Color.red;
|
|
Color white = Color.white;
|
|
Transform transform9 = base.transform;
|
|
Color cyan = Color.cyan;
|
|
Color white2 = Color.white;
|
|
Color blue = Color.blue;
|
|
Color white3 = Color.white;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06010532 RID: 66866 RVA: 0x003AE7E4 File Offset: 0x003AC9E4
|
|
[Token(Token = "0x6010532")]
|
|
[Address(RVA = "0x1ECD630", Offset = "0x1ECC630", VA = "0x181ECD630")]
|
|
public WaterCausticsLight()
|
|
{
|
|
Color white = Color.white;
|
|
this.heightBlendEnd = -0.5f;
|
|
Color white2 = Color.white;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x0400AB06 RID: 43782
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400AB06")]
|
|
[SerializeField]
|
|
[Header("Textures")]
|
|
private Texture alphaMap;
|
|
|
|
// Token: 0x0400AB07 RID: 43783
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400AB07")]
|
|
[SerializeField]
|
|
private Texture displacementNormals;
|
|
|
|
// Token: 0x0400AB08 RID: 43784
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x400AB08")]
|
|
[SerializeField]
|
|
private RenderTexture cookie;
|
|
|
|
// Token: 0x0400AB09 RID: 43785
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x400AB09")]
|
|
[SerializeField]
|
|
private Shader causticsShader;
|
|
|
|
// Token: 0x0400AB0A RID: 43786
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x400AB0A")]
|
|
[SerializeField]
|
|
[Header("Motion")]
|
|
[Range(0f, 1f)]
|
|
private float distortAmount;
|
|
|
|
// Token: 0x0400AB0B RID: 43787
|
|
[FieldOffset(Offset = "0x3C")]
|
|
[Token(Token = "0x400AB0B")]
|
|
[SerializeField]
|
|
private Vector2 alphaSpeed;
|
|
|
|
// Token: 0x0400AB0C RID: 43788
|
|
[FieldOffset(Offset = "0x44")]
|
|
[Token(Token = "0x400AB0C")]
|
|
[SerializeField]
|
|
private Vector2 distortSpeed;
|
|
|
|
// Token: 0x0400AB0D RID: 43789
|
|
[FieldOffset(Offset = "0x4C")]
|
|
[Token(Token = "0x400AB0D")]
|
|
private Vector4 JIIHEKOMFJP;
|
|
|
|
// Token: 0x0400AB0E RID: 43790
|
|
[FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x400AB0E")]
|
|
[SerializeField]
|
|
[Range(0f, 1f)]
|
|
[Header("World Integration")]
|
|
private float causticsAmount;
|
|
|
|
// Token: 0x0400AB0F RID: 43791
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400AB0F")]
|
|
[SerializeField]
|
|
private bool useHeightBlend;
|
|
|
|
// Token: 0x0400AB10 RID: 43792
|
|
[FieldOffset(Offset = "0x64")]
|
|
[Token(Token = "0x400AB10")]
|
|
[SerializeField]
|
|
private float heightBlendStart = 0.5f;
|
|
|
|
// Token: 0x0400AB11 RID: 43793
|
|
[FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400AB11")]
|
|
[SerializeField]
|
|
private Color heightBlendStartLightColor;
|
|
|
|
// Token: 0x0400AB12 RID: 43794
|
|
[FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x400AB12")]
|
|
[SerializeField]
|
|
private float heightBlendEnd;
|
|
|
|
// Token: 0x0400AB13 RID: 43795
|
|
[FieldOffset(Offset = "0x7C")]
|
|
[Token(Token = "0x400AB13")]
|
|
[SerializeField]
|
|
private Color heightBlendEndLightColor;
|
|
|
|
// Token: 0x0400AB14 RID: 43796
|
|
[FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x400AB14")]
|
|
private Material IDANKLAHBBD;
|
|
|
|
// Token: 0x0400AB15 RID: 43797
|
|
[Token(Token = "0x400AB15")]
|
|
private static readonly int GHBGCBCELFE = Shader.PropertyToID("_NormalMap");
|
|
|
|
// Token: 0x0400AB16 RID: 43798
|
|
[Token(Token = "0x400AB16")]
|
|
private static readonly int BBJNKGCIKKN = Shader.PropertyToID("_DistortAmount");
|
|
|
|
// Token: 0x0400AB17 RID: 43799
|
|
[Token(Token = "0x400AB17")]
|
|
private static readonly int KGCFGNHHEJD = Shader.PropertyToID("_Speeds");
|
|
|
|
// Token: 0x0400AB18 RID: 43800
|
|
[Token(Token = "0x400AB18")]
|
|
private static readonly int CHFDEOKNKGI = Shader.PropertyToID("_CausticsAmount");
|
|
|
|
// Token: 0x0400AB19 RID: 43801
|
|
[FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x400AB19")]
|
|
private Light KOBMAHGNLDC;
|
|
}
|
|
}
|