Unity

수업 내용 복습 7

psb08 2025. 3. 29. 15:49
728x90
반응형

시네머신을 만든 뒤 빈 오브젝트를 이용하여 카메라를 움직이게 만들겠습니다

 

CameraRig라는 빈 오브젝트를 만들고,

시네머신을 설정합니다

 

CameraRig.cs

using UnityEngine;

namespace Code.UI
{
    public class CameraRig : MonoBehaviour
    {
        [SerializeField] private PlayerInputSO _playerInput;
        [SerializeField] private Rigidbody _rigidbody;
        public float moveSpeed = 5f;
        
        private void FixedUpdate()
        {
            Movement();
        }

        private void Movement()
        {
            if (_playerInput == null) return;
            
            Vector2 movementInput = _playerInput.MovementKey;
            Vector3 moveDirection = new Vector3(movementInput.x, 0, movementInput.y);

            moveDirection = Quaternion.Euler(0, -45, 0) * moveDirection;

            if (moveDirection.sqrMagnitude > 0)
            {
                moveDirection.Normalize();
            }
            
            _rigidbody.MovePosition(_rigidbody.position + moveDirection * (moveSpeed * Time.fixedDeltaTime));
        }
        
    }    
}

이 코드를 CameraRig에 달아주면, CameraRig 오브젝트를 회전하지 않고 정상적으로 움직입니다.

 

 

'Unity' 카테고리의 다른 글

엔진 개인 프로젝트 1일차  (0) 2025.05.27
2D, 3D 시점 변환 카메라로 만들어 보기  (0) 2025.04.14
수업 내용 복습 6  (0) 2025.03.29
수업 내용 복습 5  (0) 2025.03.18
수업 내용 복습 4  (0) 2025.03.17