using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using UnityEngine.Scripting; namespace UnityEngine.Experimental.Rendering { // Token: 0x020004D5 RID: 1237 [UsedByNativeCode] public struct CullingParameters { // Token: 0x06003BF5 RID: 15349 RVA: 0x0006979C File Offset: 0x0006799C public unsafe float GetLayerCullDistance(int layerIndex) { if (layerIndex < 0 || layerIndex >= 32) { throw new IndexOutOfRangeException("Invalid layer index"); } fixed (float* ptr = &this._layerFarCullDistances.FixedElementField) { return ptr[(IntPtr)layerIndex * 4]; } } // Token: 0x06003BF6 RID: 15350 RVA: 0x000697E0 File Offset: 0x000679E0 public unsafe void SetLayerCullDistance(int layerIndex, float distance) { if (layerIndex < 0 || layerIndex >= 32) { throw new IndexOutOfRangeException("Invalid layer index"); } fixed (float* ptr = &this._layerFarCullDistances.FixedElementField) { ptr[(IntPtr)layerIndex * 4] = distance; } } // Token: 0x06003BF7 RID: 15351 RVA: 0x00069824 File Offset: 0x00067A24 public unsafe Plane GetCullingPlane(int index) { if (index < 0 || index >= this.cullingPlaneCount || index >= 10) { throw new IndexOutOfRangeException("Invalid plane index"); } fixed (float* ptr = &this._cullingPlanes.FixedElementField) { return new Plane(new Vector3(ptr[(IntPtr)(index * 4) * 4], ptr[(IntPtr)(index * 4 + 1) * 4], ptr[(IntPtr)(index * 4 + 2) * 4]), ptr[(IntPtr)(index * 4 + 3) * 4]); } } // Token: 0x06003BF8 RID: 15352 RVA: 0x000698A0 File Offset: 0x00067AA0 public unsafe void SetCullingPlane(int index, Plane plane) { if (index < 0 || index >= this.cullingPlaneCount || index >= 10) { throw new IndexOutOfRangeException("Invalid plane index"); } fixed (float* ptr = &this._cullingPlanes.FixedElementField) { ptr[(IntPtr)(index * 4) * 4] = plane.normal.x; ptr[(IntPtr)(index * 4 + 1) * 4] = plane.normal.y; ptr[(IntPtr)(index * 4 + 2) * 4] = plane.normal.z; ptr[(IntPtr)(index * 4 + 3) * 4] = plane.distance; } } // Token: 0x04001207 RID: 4615 public int isOrthographic; // Token: 0x04001208 RID: 4616 public LODParameters lodParameters; // Token: 0x04001209 RID: 4617 private CullingParameters.<_cullingPlanes>__FixedBuffer0 _cullingPlanes; // Token: 0x0400120A RID: 4618 public int cullingPlaneCount; // Token: 0x0400120B RID: 4619 public int cullingMask; // Token: 0x0400120C RID: 4620 private long sceneMask; // Token: 0x0400120D RID: 4621 private CullingParameters.<_layerFarCullDistances>__FixedBuffer1 _layerFarCullDistances; // Token: 0x0400120E RID: 4622 private int layerCull; // Token: 0x0400120F RID: 4623 public Matrix4x4 cullingMatrix; // Token: 0x04001210 RID: 4624 public Vector3 position; // Token: 0x04001211 RID: 4625 public float shadowDistance; // Token: 0x04001212 RID: 4626 private int _cullingFlags; // Token: 0x04001213 RID: 4627 private int _cameraInstanceID; // Token: 0x04001214 RID: 4628 public ReflectionProbeSortOptions reflectionProbeSortOptions; // Token: 0x020004D6 RID: 1238 [UnsafeValueType] [CompilerGenerated] [StructLayout(LayoutKind.Sequential, Size = 160)] public struct <_cullingPlanes>__FixedBuffer0 { // Token: 0x04001215 RID: 4629 public float FixedElementField; } // Token: 0x020004D7 RID: 1239 [UnsafeValueType] [CompilerGenerated] [StructLayout(LayoutKind.Sequential, Size = 128)] public struct <_layerFarCullDistances>__FixedBuffer1 { // Token: 0x04001216 RID: 4630 public float FixedElementField; } } }