using System; using System.Collections.Generic; using System.Linq; using System.Runtime.CompilerServices; using Cpp2IlInjected; using RecRoom.Core.Imposters; using UnityEngine; using UnityEngine.Rendering; using UnityEngine.Rendering.Universal; namespace RecRoom.Avatars.Poseable.Editor { // Token: 0x020024A3 RID: 9379 [Token(Token = "0x20024A3")] public class PoseableAvatarAuthoringLighting : MonoBehaviour { // Token: 0x0600EFF5 RID: 61429 RVA: 0x0036DA18 File Offset: 0x0036BC18 [Token(Token = "0x600EFF5")] [Address(RVA = "0x1A07570", Offset = "0x1A06570", VA = "0x181A07570")] public void Initialize(PoseableAvatarAuthoringScene LHECBPFGEMH, ImposterRenderConfig PBGBNMCPEAJ) { this.LHECBPFGEMH = LHECBPFGEMH; RenderSettings.ambientMode = AmbientMode.Trilight; int num = 0; if (PBGBNMCPEAJ != num) { this.FromLightingConfig(PBGBNMCPEAJ); } } // Token: 0x0600EFF6 RID: 61430 RVA: 0x0036DA48 File Offset: 0x0036BC48 [Token(Token = "0x600EFF6")] [Address(RVA = "0x1A07330", Offset = "0x1A06330", VA = "0x181A07330")] public URPLight[] GetLights() { return this.LightingRoot.GetComponentsInChildren(); } // Token: 0x0600EFF7 RID: 61431 RVA: 0x0036DA68 File Offset: 0x0036BC68 [Token(Token = "0x600EFF7")] [Address(RVA = "0x1A071D0", Offset = "0x1A061D0", VA = "0x181A071D0")] public void GetLightingConfig(ref ImposterRenderConfig PBGBNMCPEAJ) { URPLight[] componentsInChildren = this.LightingRoot.GetComponentsInChildren(); Func func = new Func(this.NAFAJGBPIMC); ImposterRenderConfig.LightConfig[] array = Enumerable.ToArray(Enumerable.Select(componentsInChildren, func)); Color ambientEquatorColor = RenderSettings.ambientEquatorColor; Color ambientGroundColor = RenderSettings.ambientGroundColor; Color ambientSkyColor = RenderSettings.ambientSkyColor; Cubemap customReflection = RenderSettings.customReflection; } // Token: 0x0600EFF8 RID: 61432 RVA: 0x0036DAC0 File Offset: 0x0036BCC0 [Token(Token = "0x600EFF8")] [Address(RVA = "0x1A06D80", Offset = "0x1A05D80", VA = "0x181A06D80")] public void FromLightingConfig(ImposterRenderConfig PBGBNMCPEAJ) { int num; int num2; do { num = 0; List list = Enumerable.ToList(this.LightingRoot.GetComponentsInChildren()); bool flag; if (flag) { Transform transform; Transform parent = transform.parent; global::UnityEngine.Object.DestroyImmediate(transform.gameObject); Transform lightingRoot = this.LightingRoot; if (!(parent != lightingRoot)) { continue; } global::UnityEngine.Object.DestroyImmediate(parent.gameObject); } num2 = 0; } while (num != 0); ImposterRenderConfig.LightConfig[] lights = PBGBNMCPEAJ.lights; if (num2 < lights.Length) { GameObject gameObject = new GameObject("Light Offset"); GameObject gameObject2 = new GameObject("Light"); Transform transform2 = gameObject2.transform; Transform transform3 = gameObject.transform; transform2.parentInternal = transform3; Transform transform4 = gameObject.transform; Transform lightingRoot2 = this.LightingRoot; transform4.parentInternal = lightingRoot2; URPLight urplight = gameObject2.AddComponent(); Transform transform5 = this.LHECBPFGEMH.poseableDummy.transform; ImposterRenderConfig.LightConfig lightConfig = PBGBNMCPEAJ.lights[num2]; PoseableAvatarAuthoringLighting.PJOADLFDDOE(urplight, transform5, lightConfig); num2++; } RenderSettings.ambientMode = AmbientMode.Trilight; RenderSettings.customReflection = PBGBNMCPEAJ.environmentReflectionProbe; } // Token: 0x0600EFF9 RID: 61433 RVA: 0x0036DBE8 File Offset: 0x0036BDE8 [Token(Token = "0x600EFF9")] [Address(RVA = "0x1A07380", Offset = "0x1A06380", VA = "0x181A07380")] private void HDEKJFPAJJA(URPLight OKBCAEBMIHF) { Transform parent = OKBCAEBMIHF.transform.parent; global::UnityEngine.Object.DestroyImmediate(OKBCAEBMIHF.gameObject); Transform lightingRoot = this.LightingRoot; if (parent != lightingRoot) { global::UnityEngine.Object.DestroyImmediate(parent.gameObject); } } // Token: 0x0600EFFA RID: 61434 RVA: 0x0036DC30 File Offset: 0x0036BE30 [Token(Token = "0x600EFFA")] [Address(RVA = "0x1A07480", Offset = "0x1A06480", VA = "0x181A07480")] private URPLight HGAFIINCFHN() { GameObject gameObject = new GameObject("Light Offset"); GameObject gameObject2 = new GameObject("Light"); Transform transform = gameObject2.transform; Transform transform2 = gameObject.transform; transform.parentInternal = transform2; Transform transform3 = gameObject.transform; Transform lightingRoot = this.LightingRoot; transform3.parentInternal = lightingRoot; return gameObject2.AddComponent(); } // Token: 0x0600EFFB RID: 61435 RVA: 0x0036DC90 File Offset: 0x0036BE90 [Token(Token = "0x600EFFB")] [Address(RVA = "0x1A07600", Offset = "0x1A06600", VA = "0x181A07600")] private static ImposterRenderConfig.LightConfig KKMGOHFCCPO(URPLight OKBCAEBMIHF, Transform KDMEMFMEHEF) { ImposterRenderConfig.LightConfig lightConfig = new ImposterRenderConfig.LightConfig(); Vector3 vector; float z = vector.z; Transform transform = OKBCAEBMIHF.transform; Vector3 vector2; float z2 = vector2.z; Vector3 vector3; float z3 = vector3.z; string name = OKBCAEBMIHF.gameObject.name; lightConfig.name = name; Vector3 vector4; float z4 = vector4.z; lightConfig.offsetOrientationEulerAngles.z = z4; float num; lightConfig.offsetDistance = num; LightType type = OKBCAEBMIHF.k__BackingField.type; lightConfig.lightType = type; float range = OKBCAEBMIHF.k__BackingField.range; lightConfig.range = range; float spotAngle = OKBCAEBMIHF.k__BackingField.spotAngle; lightConfig.spotAngle = spotAngle; Light k__BackingField = OKBCAEBMIHF.k__BackingField; float intensity = OKBCAEBMIHF.k__BackingField.intensity; lightConfig.intensity = intensity; float bounceIntensity = OKBCAEBMIHF.k__BackingField.bounceIntensity; lightConfig.indirectMultiplier = bounceIntensity; float specularContribution = OKBCAEBMIHF.specularContribution; lightConfig.specularContribution = specularContribution; if (lightConfig.SupportsShadows) { LightShadows shadows = OKBCAEBMIHF.k__BackingField.shadows; } int num2 = 0; lightConfig.shadowType = (LightShadows)num2; if (lightConfig.SupportsShadows) { float shadowStrength = OKBCAEBMIHF.k__BackingField.shadowStrength; } int num3 = 0; lightConfig.shadowStrength = (float)num3; if (lightConfig.SupportsShadows) { float shadowNearPlane = OKBCAEBMIHF.k__BackingField.shadowNearPlane; } return lightConfig; } // Token: 0x0600EFFC RID: 61436 RVA: 0x0036DDDC File Offset: 0x0036BFDC [Token(Token = "0x600EFFC")] [Address(RVA = "0x1A079E0", Offset = "0x1A069E0", VA = "0x181A079E0")] private static void PJOADLFDDOE(URPLight OKBCAEBMIHF, Transform KDMEMFMEHEF, ImposterRenderConfig.LightConfig PBGBNMCPEAJ) { Vector3 forward = Vector3.forward; Transform transform = OKBCAEBMIHF.transform; int num = 0; OKBCAEBMIHF.transform.rotation = num; Transform parent = OKBCAEBMIHF.transform.parent; string text = PBGBNMCPEAJ.name + " Offset"; parent.name = text; Transform transform2 = OKBCAEBMIHF.transform; string name = PBGBNMCPEAJ.name; transform2.name = name; Light k__BackingField = OKBCAEBMIHF.k__BackingField; LightType lightType = PBGBNMCPEAJ.lightType; k__BackingField.type = lightType; Light k__BackingField2 = OKBCAEBMIHF.k__BackingField; float range = PBGBNMCPEAJ.range; k__BackingField2.range = range; Light k__BackingField3 = OKBCAEBMIHF.k__BackingField; float spotAngle = PBGBNMCPEAJ.spotAngle; k__BackingField3.spotAngle = spotAngle; Light k__BackingField4 = OKBCAEBMIHF.k__BackingField; Light k__BackingField5 = OKBCAEBMIHF.k__BackingField; float intensity = PBGBNMCPEAJ.intensity; k__BackingField5.intensity = intensity; Light k__BackingField6 = OKBCAEBMIHF.k__BackingField; float indirectMultiplier = PBGBNMCPEAJ.indirectMultiplier; k__BackingField6.bounceIntensity = indirectMultiplier; float specularContribution = PBGBNMCPEAJ.specularContribution; Light k__BackingField7 = OKBCAEBMIHF.k__BackingField; OKBCAEBMIHF.specularContribution = specularContribution; if (PBGBNMCPEAJ.SupportsShadows) { } int num2 = 0; k__BackingField7.shadows = (LightShadows)num2; Light k__BackingField8 = OKBCAEBMIHF.k__BackingField; if (PBGBNMCPEAJ.SupportsShadows) { } int num3 = 0; k__BackingField8.shadowStrength = (float)num3; Light k__BackingField9 = OKBCAEBMIHF.k__BackingField; if (PBGBNMCPEAJ.SupportsShadows) { } k__BackingField9.shadowNearPlane = 0.1f; } // Token: 0x0600EFFD RID: 61437 RVA: 0x0036DF3C File Offset: 0x0036C13C [Token(Token = "0x600EFFD")] [Address(RVA = "0x1A07950", Offset = "0x1A06950", VA = "0x181A07950")] private void OIBPECLLEGL(ref ImposterRenderConfig PBGBNMCPEAJ) { Color ambientEquatorColor = RenderSettings.ambientEquatorColor; Color ambientGroundColor = RenderSettings.ambientGroundColor; Color ambientSkyColor = RenderSettings.ambientSkyColor; Cubemap customReflection = RenderSettings.customReflection; } // Token: 0x0600EFFE RID: 61438 RVA: 0x0036DF6C File Offset: 0x0036C16C [Token(Token = "0x600EFFE")] [Address(RVA = "0x1A06D10", Offset = "0x1A05D10", VA = "0x181A06D10")] private void FBNLGKFNDHF(ImposterRenderConfig PBGBNMCPEAJ) { RenderSettings.ambientMode = AmbientMode.Trilight; RenderSettings.ambientEquatorColor = PBGBNMCPEAJ.environmentEquatorColor; RenderSettings.ambientGroundColor = PBGBNMCPEAJ.environmentGroundColor; RenderSettings.ambientSkyColor = PBGBNMCPEAJ.environmentSkyColor; RenderSettings.customReflection = PBGBNMCPEAJ.environmentReflectionProbe; } // Token: 0x0600EFFF RID: 61439 RVA: 0x0036DFB4 File Offset: 0x0036C1B4 [Token(Token = "0x600EFFF")] [Address(RVA = "0x428AD0", Offset = "0x427AD0", VA = "0x180428AD0")] public PoseableAvatarAuthoringLighting() { } // Token: 0x0600F000 RID: 61440 RVA: 0x0036DFC8 File Offset: 0x0036C1C8 [Token(Token = "0x600F000")] [Address(RVA = "0x1A07910", Offset = "0x1A06910", VA = "0x181A07910")] [CompilerGenerated] private ImposterRenderConfig.LightConfig NAFAJGBPIMC(URPLight DLECGJMGFNI) { Transform transform = this.LHECBPFGEMH.poseableDummy.transform; return PoseableAvatarAuthoringLighting.KKMGOHFCCPO(DLECGJMGFNI, transform); } // Token: 0x04009DDC RID: 40412 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4009DDC")] [SerializeField] private Transform LightingRoot; // Token: 0x04009DDD RID: 40413 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4009DDD")] private PoseableAvatarAuthoringScene LHECBPFGEMH; } }