예제 #1
0
        private void OnDisable()
        {
            renderers = null;
            unlitPass?.UpdateRenderers(null);

            activeInstance.resources?.ReleaseAll();
            activeInstance.resources = null;

            activeInstance = null;
        }
예제 #2
0
        private void OnEnable()
        {
            if (activeInstance != null)
            {
                throw new Exception($"Multiple instances of {nameof(PointCloudManager)} seem to be active - this is invalid.");
            }

            activeInstance = this;

            VerifyPassVolume();
        }
예제 #3
0
        private void OnEnable()
        {
            if (activeInstance != null)
            {
                throw new Exception($"Multiple instances of {nameof(PointCloudManager)} seem to be active - this is invalid.");
            }

            activeInstance = this;

            InitializeCustomPassVolumes();
            RefreshRenderers();
        }
예제 #4
0
        private void OnDisable()
        {
            renderers = null;

            var customPassVolume = gameObject.GetComponent <CustomPassVolume>();

            if (customPassVolume != null && customPassVolume.customPasses.Count == 1 &&
                customPassVolume.customPasses[0] is PointCloudRenderPass pass)
            {
                pass.UpdateRenderers(null);
            }

            activeInstance.resources?.ReleaseAll();
            activeInstance.resources = null;

            activeInstance = null;
        }
예제 #5
0
        private void OnDisable()
        {
            activeInstance = null;

            if (renderers != null && renderers.Length > 0)
            {
                foreach (var pcr in renderers)
                {
                    pcr.Cleanup();
                }
            }

            renderers = null;

            var customPassVolume = gameObject.GetComponent <CustomPassVolume>();

            if (customPassVolume != null && customPassVolume.customPasses.Count == 1 &&
                customPassVolume.customPasses[0] is PointCloudRenderPass pass)
            {
                pass.UpdateRenderers(null);
            }
        }
예제 #6
0
 private void OnDestroy()
 {
     PointCloudManager.HandleRendererRemoved(this);
 }
예제 #7
0
 private void Start()
 {
     PointCloudManager.HandleRendererAdded(this);
 }