Esempio n. 1
0
        void Update()
        {
            CamFilterResultInfo camFilterResultInfo;

            if (_fluencePointFilter.filter(_defCamFilterIntent, out camFilterResultInfo))
            {
                List <CamInfluenceTriggerPoint> hitTriggerPointLst = camFilterResultInfo.hitTriggerPointLst;

                for (int i = 0; i < hitTriggerPointLst.Count; i++)
                {
                    IGhostCamRigDriver rigDriver = hitTriggerPointLst[i].GetComponent <IGhostCamRigDriver>();

                    if (rigDriver != null)
                    {
                        rigDriver.run(camFilterResultInfo);
                    }
                }
            }
            //  使用默认的数据
            else
            {
                throw new Exception("最大的Collider没有设置 或 层不对 或 你Y的走出了最大的collider~");
            }


            //  主摄像机跟着Ghost CamRig 移动 和旋转
            if (ghostAttachMainCamera && mainCamera != null)
            {
                mainCamera.position = ghostRig.position;
                mainCamera.rotation = ghostRig.rotation;
            }
        }