public void RemoveCamera(GolfCameraType type) { if (!m_vCameraDic.ContainsKey((uint)type)) { m_vCameraDic.Remove((uint)type); } }
public GolfCamera(GolfCameraType type, Transform parent, GolfCameraPriority priority, int fieldOfView, Vector3 initPos) { Type = type; InitialPosition = initPos; Name = "VCam_" + Type.ToString(); Create(parent, priority, fieldOfView); }
public void SetCameraPosition(GolfCameraType cameraType, Vector3 pos) { uint cameraIdx = (uint)cameraType; GolfCamera camera = null; if (m_vCameraDic.TryGetValue(cameraIdx, out camera)) { camera.SetPosition(pos); } }
public void Follow(GolfCameraType cameraType, Transform trans) { uint cameraIdx = (uint)cameraType; GolfCamera camera = null; if (m_vCameraDic.TryGetValue(cameraIdx, out camera)) { camera.Follow(trans); } }
public void LookAt(GolfCameraType cameraType, Vector3 pos) { uint cameraIdx = (uint)cameraType; GolfCamera camera = null; if (m_vCameraDic.TryGetValue(cameraIdx, out camera)) { camera.VCamera.transform.LookAt(pos); } }
public void SetCameraRotation(GolfCameraType cameraType, Quaternion rot) { uint cameraIdx = (uint)cameraType; GolfCamera camera = null; if (m_vCameraDic.TryGetValue(cameraIdx, out camera)) { camera.SetRotation(rot); } }
public GolfCamera GetCamera(GolfCameraType cameraType) { uint cameraIdx = (uint)cameraType; GolfCamera camera = null; if (m_vCameraDic.TryGetValue(cameraIdx, out camera)) { return(camera); } return(null); }
public void Clear() { CurType = GolfCameraType.Sky; if (m_vCameraDic != null) { foreach (GolfCamera camera in m_vCameraDic.Values) { camera.Clear(); } } blenderSetting = null; blends = null; }
private void InitBattleCameras(GolfCameraType initType) { CameraM = new GolfCameraManage(GolfCameraType.Sky); CameraM.AddCamera(new GolfCamera(GolfCameraType.Sky, transform, GolfCamera.GolfCameraPriority.Middle, 60, new Vector3(0, 0, 0))); CameraM.AddCamera(new GolfCamera(GolfCameraType.Drive2Fly, transform, GolfCamera.GolfCameraPriority.Middle, 60, new Vector3(0, 0, 0))); CameraM.AddCamera(new GolfCamera(GolfCameraType.Drive2Roll, transform, GolfCamera.GolfCameraPriority.Middle, 60, new Vector3(0, 0, 0))); CameraM.AddCamera(new GolfCamera(GolfCameraType.Fly2Land, transform, GolfCamera.GolfCameraPriority.Middle, 60, new Vector3(0, 0, 0))); CameraM.AddCamera(new GolfCamera(GolfCameraType.Land2Roll, transform, GolfCamera.GolfCameraPriority.Middle, 60, new Vector3(0, 0, 0))); CameraM.AddCamera(new GolfCamera(GolfCameraType.NearHole, transform, GolfCamera.GolfCameraPriority.Middle, 60, new Vector3(0, 0, 0))); CinemachineBlendDefinition blendDef = new CinemachineBlendDefinition(CinemachineBlendDefinition.Style.Cut, 1); CameraM.AddBlendSetting(CinemachineBlenderSettings.kBlendFromAnyCameraLabel, CameraM.GetCamera(GolfCameraType.Fly2Land).Name, blendDef); CameraM.SwitchCamera(initType, true); }
/// <summary> /// 切换相机 /// </summary> /// <param name="cameraType"></param> /// <param name="canChange2Self"></param> public void SwitchCamera(GolfCameraType cameraType, bool canChange2Self = false) { if (!canChange2Self && CurType == cameraType) { return; } uint cameraIdx = (uint)cameraType; GolfCamera camera = null; if (m_vCameraDic.TryGetValue(cameraIdx, out camera)) { camera.SetActive(); CurType = cameraType; } }
public GolfCameraManage(GolfCameraType initType) { m_vCameraDic = new Dictionary <uint, GolfCamera>(); blenderSetting = (CinemachineBlenderSettings)ScriptableObject.CreateInstance(typeof(CinemachineBlenderSettings)); blends = new List <CinemachineBlenderSettings.CustomBlend>(); }