From ec231f4110c782d44ea2820a1eaaa7a5711c6f16 Mon Sep 17 00:00:00 2001 From: smchoi <ws5260@naver.com> Date: 수, 24 7월 2024 13:29:47 +0900 Subject: [PATCH] Add : 카메라 줌인& 줌아웃 기능 추가 --- Assets/Korail/Scripts/Control/MoveCamera.cs | 49 +++++++++++++++++++++++++++++++++++++------------ 1 files changed, 37 insertions(+), 12 deletions(-) diff --git a/Assets/Korail/Scripts/Control/MoveCamera.cs b/Assets/Korail/Scripts/Control/MoveCamera.cs index 6401128..c89a730 100644 --- a/Assets/Korail/Scripts/Control/MoveCamera.cs +++ b/Assets/Korail/Scripts/Control/MoveCamera.cs @@ -13,24 +13,27 @@ /// 移대찓�씪 �떆�젏 蹂�寃� �냽�룄 /// </summary> public float CameraRotationSpeed = 4; - ///// <summary> - ///// 留덉슦�뒪 �쑀 以� �냽�룄 - ///// </summary> - //public float ZoomSpeewd = 5000.0f; - ///// <summary> - ///// 以� 理쒖넖媛�, �옉�쓣 �닔濡� �솗���븷 �닔 �엳�뒗 �닔移섍� 而ㅼ쭚 - ///// </summary> - //public float MinZoomValue = 10; - ///// <summary> - ///// 以� 理쒕�媛�, �겢 �닔濡� 異뺤냼�븷 �닔 �엳�뒗 �닔移섍� 而ㅼ쭚 - ///// </summary> - //public float MaxZoomValue = 60; + /// <summary> + /// 留덉슦�뒪 �쑀 以� �냽�룄 + /// </summary> + public float ZoomSpeed = 50.0f; + + public float ZoomMoveSpeed = 40f; + /// <summary> + /// 以� 理쒖넖媛�, �옉�쓣 �닔濡� �솗���븷 �닔 �엳�뒗 �닔移섍� 而ㅼ쭚 + /// </summary> + public float MinZoomValue = 10; + /// <summary> + /// 以� 理쒕�媛�, �겢 �닔濡� 異뺤냼�븷 �닔 �엳�뒗 �닔移섍� 而ㅼ쭚 + /// </summary> + public float MaxZoomValue = 90; /// <summary> /// 移대찓�씪 �씠�룞 �냽�룄 /// </summary> [Range(1f, 10f)] public float CameraMoveSpeed = 4; + /// <summary> @@ -58,13 +61,19 @@ /// </summary> private Vector3 m_CameraInitOffset; + private Camera m_Camera; + private float initFieldOfView = 60.0f; + private float targetFieldOfView = 60.0f; public override void Awake() { } void Start() { + + m_Camera = Camera.main; + mouseLeftButton = Mouse.current.leftButton; @@ -97,7 +106,23 @@ } + float scrollValue = Input.GetAxis("Mouse ScrollWheel") * ZoomSpeed; + if(scrollValue < 0 && m_Camera.fieldOfView > MinZoomValue) + { + targetFieldOfView = m_Camera.fieldOfView + scrollValue; + } + else if(scrollValue > 0 && m_Camera.fieldOfView < MaxZoomValue) + { + targetFieldOfView = m_Camera.fieldOfView + scrollValue; + } + + if(Input.GetKeyUp(KeyCode.Mouse2)) + { + targetFieldOfView = initFieldOfView; + } + + m_Camera.fieldOfView = Mathf.Lerp(m_Camera.fieldOfView, targetFieldOfView , Time.deltaTime * ZoomMoveSpeed); } -- Gitblit v1.8.0