< Summary

Class:DCL.Skybox.SkyboxCamera
Assembly:ProceduralSkybox
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Rendering/ProceduralSkybox/ToolProceduralSkybox/Scripts/SkyboxCamera.cs
Covered lines:0
Uncovered lines:24
Coverable lines:24
Total lines:56
Line coverage:0% (0 of 24)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
SkyboxCamera()0%2100%
AssignTargetCamera(...)0%12300%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Rendering/ProceduralSkybox/ToolProceduralSkybox/Scripts/SkyboxCamera.cs

#LineLine coverage
 1using System.Collections;
 2using System.Collections.Generic;
 3using UnityEngine;
 4using UnityEngine.Rendering.Universal;
 5
 6namespace DCL.Skybox
 7{
 8
 9    public class SkyboxCamera
 10    {
 11        private GameObject skyboxCameraGO;
 12        private Camera skyboxCamera;
 13        private SkyboxCameraBehaviour camBehavior;
 14
 015        public SkyboxCamera()
 16        {
 17            // Make a new camera
 018            skyboxCameraGO = new GameObject("Skybox Camera");
 019            skyboxCameraGO.transform.position = Vector3.zero;
 020            skyboxCameraGO.transform.rotation = Quaternion.identity;
 21
 22            // Attach camera component
 023            skyboxCamera = skyboxCameraGO.AddComponent<Camera>();
 24
 025            var cameraData = skyboxCamera.GetUniversalAdditionalCameraData();
 026            cameraData.renderShadows = false;
 027            skyboxCamera.useOcclusionCulling = false;
 028            skyboxCamera.cullingMask = (1 << LayerMask.NameToLayer("Skybox"));
 029            skyboxCamera.farClipPlane = 5000;
 30
 31            // Attach follow script
 032            camBehavior = skyboxCameraGO.AddComponent<SkyboxCameraBehaviour>();
 033        }
 34
 35        public void AssignTargetCamera(Transform mainCam)
 36        {
 037            if (mainCam == null)
 038                return;
 39
 040            Camera mainCamComponent = mainCam.GetComponent<Camera>();
 041            var mainCameraData = mainCamComponent.GetUniversalAdditionalCameraData();
 042            var cameraStack = mainCameraData.cameraStack;
 43
 044            mainCameraData.renderType = CameraRenderType.Overlay;
 45
 046            var cameraData = skyboxCamera.GetUniversalAdditionalCameraData();
 047            cameraData.cameraStack.Add(mainCamComponent);
 048            foreach (Camera camera in cameraStack)
 49            {
 050                cameraData.cameraStack.Add(camera);
 51            }
 52
 053            camBehavior.AssignCamera(mainCamComponent, skyboxCamera);
 054        }
 55    }
 56}