Files
2026-04-08 23:40:05 +02:00

172 lines
5.2 KiB
C#

using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Core.Imposters
{
// Token: 0x020029B1 RID: 10673
[Token(Token = "0x20029B1")]
[CreateAssetMenu]
[StructLayout(3)]
public class ImposterRenderConfig : ScriptableObject
{
// Token: 0x06012A45 RID: 76357 RVA: 0x00471ED4 File Offset: 0x004700D4
[Token(Token = "0x6012A45")]
[Address(RVA = "0x13EEF90", Offset = "0x13ED990", VA = "0x1813EEF90")]
public ImposterRenderConfig()
{
float z = Vector3.zero.z;
this.normalizedCameraTargetOffset.z = z;
base..ctor();
}
// Token: 0x0400C78C RID: 51084
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400C78C")]
[Header("Composition")]
public Vector3 cameraOffsetDirection;
// Token: 0x0400C78D RID: 51085
[global::Cpp2IlInjected.FieldOffset(Offset = "0x24")]
[Token(Token = "0x400C78D")]
public float cameraOffsetMinDistance;
// Token: 0x0400C78E RID: 51086
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400C78E")]
[Tooltip("Normalized offset from the center of the mesh's bounds that the camera will target")]
public Vector3 normalizedCameraTargetOffset;
// Token: 0x0400C78F RID: 51087
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x400C78F")]
[Header("Environment Lighting")]
[ColorUsage(false, true)]
public Color environmentSkyColor;
// Token: 0x0400C790 RID: 51088
[global::Cpp2IlInjected.FieldOffset(Offset = "0x44")]
[Token(Token = "0x400C790")]
[ColorUsage(false, true)]
public Color environmentEquatorColor;
// Token: 0x0400C791 RID: 51089
[global::Cpp2IlInjected.FieldOffset(Offset = "0x54")]
[Token(Token = "0x400C791")]
[ColorUsage(false, true)]
public Color environmentGroundColor;
// Token: 0x0400C792 RID: 51090
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
[Token(Token = "0x400C792")]
public Cubemap environmentReflectionProbe;
// Token: 0x0400C793 RID: 51091
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
[Token(Token = "0x400C793")]
[Header("Direct Lighting")]
public ImposterRenderConfig.LightConfig[] lights;
// Token: 0x020029B2 RID: 10674
[Token(Token = "0x20029B2")]
[Serializable]
public class LightConfig
{
// Token: 0x1700320B RID: 12811
// (get) Token: 0x06012A46 RID: 76358 RVA: 0x00471F00 File Offset: 0x00470100
[Token(Token = "0x1700320B")]
public bool SupportsShadows
{
[Token(Token = "0x6012A46")]
[Address(RVA = "0x13EF970", Offset = "0x13EE370", VA = "0x1813EF970")]
get
{
LightType lightType = this.lightType;
return lightType == LightType.Spot || lightType == LightType.Directional;
}
}
// Token: 0x06012A47 RID: 76359 RVA: 0x00471F20 File Offset: 0x00470120
[Token(Token = "0x6012A47")]
[Address(RVA = "0x13EF960", Offset = "0x13EE360", VA = "0x1813EF960")]
public LightConfig()
{
}
// Token: 0x0400C794 RID: 51092
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400C794")]
public string name;
// Token: 0x0400C795 RID: 51093
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400C795")]
[Header("Location")]
public Vector3 offsetOrientationEulerAngles;
// Token: 0x0400C796 RID: 51094
[global::Cpp2IlInjected.FieldOffset(Offset = "0x24")]
[Token(Token = "0x400C796")]
public float offsetDistance;
// Token: 0x0400C797 RID: 51095
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400C797")]
[Header("Shape")]
public LightType lightType;
// Token: 0x0400C798 RID: 51096
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2C")]
[Token(Token = "0x400C798")]
public float range;
// Token: 0x0400C799 RID: 51097
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x400C799")]
public float spotAngle;
// Token: 0x0400C79A RID: 51098
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x400C79A")]
[Header("Appearance")]
public Color color;
// Token: 0x0400C79B RID: 51099
[global::Cpp2IlInjected.FieldOffset(Offset = "0x44")]
[Token(Token = "0x400C79B")]
public float intensity;
// Token: 0x0400C79C RID: 51100
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x400C79C")]
public float indirectMultiplier;
// Token: 0x0400C79D RID: 51101
[global::Cpp2IlInjected.FieldOffset(Offset = "0x4C")]
[Token(Token = "0x400C79D")]
public float specularContribution;
// Token: 0x0400C79E RID: 51102
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x400C79E")]
[Header("Shadows")]
[Tooltip("Type of shadows cast by this light. Only applies if light type is `Spot` or `Directional`")]
public LightShadows shadowType;
// Token: 0x0400C79F RID: 51103
[global::Cpp2IlInjected.FieldOffset(Offset = "0x54")]
[Token(Token = "0x400C79F")]
[Tooltip("Intensity of the shadow cast by this light")]
public float shadowStrength;
// Token: 0x0400C7A0 RID: 51104
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x400C7A0")]
[Tooltip("Objects closer than this will not cast shadows (0.1 to 10")]
[Range(0.1f, 10f)]
public float shadowNearPlane = 0.1f;
}
}
}