본문 바로가기
개발/Unity

(14) Dolly Cart로 Track을 따라 촬영하기 - 유니티 시네머신 튜토리얼

by 피로물든딸기 2022. 9. 25.
반응형

Unity 전체 링크

 

Cinemachine Tutorial

 

- (13) Dolly Track으로 카메라 촬영 경로 조절하기

- (14) Dolly Cart로 Track을 따라 촬영하기 (Follow Track with Dolly Cart)

- (15) Target Group으로 지정한 타겟을 모두 촬영하기

 

깃허브에서 코드 확인하기


Dolly Track으로 카메라 경로를 제한하였으므로,

아래와 같이 Track 내에서 계속 움직이도록 해보자.

 

이전 글에 이어서 Dolly Track with Cart를 추가하자.

 

DollyCart1과 DollyTrack2가 추가되는데 DollyTrack1을 쓸 예정이므로 Track2는 삭제한다.

 

그리고 DollyCart1의 Path에 DollyTrack1을 설정한다.

 

그리고 DollyTrack1은 아래와 같이 원으로 만들고 Player의 중심에 옮긴다.

 

마지막으로 Virtual CameraFollowDollyCart1으로 변경시킨다.

 

DollyCart를 움직이기 위해서는 인스펙터 창에서 Speed를 0이 아닌 값으로 변경해야 한다.

 

그리고 가상 카메라의 Body에서 Auto DollyEnabledv 되어야 한다.

 

이제 게임을 실행하고 DollyCart의 Speed를 조절해보자.

Speed가 양수냐 음수냐에 따라 경로가 바뀌는 것을 알 수 있다.

 

그런데 위의 카메라 경로에서 아바타가 카메라의 중심에서 어긋나면서 회전하는 문제점이 생긴다.

이것은 돌리 카트의 속도에 의해 Virtual Camera Aim의 Damping 효과가 나타났기 때문이다.

 

Damping을 0으로 줄이면, 아바타가 가운데로 잘 이동한다.


참고로 루프를 끊으면 반복되지 않고 카메라의 이동이 경로의 끝에서 멈춘다.

 

Speed를 + / - 로 바꾸면 시작과 끝 점을 반복해서 이동하게 된다.

 

Cart의 속도를 스크립트로 제어하려면 vCam의 DollySetting.cs에 CinemachineDollyCart를 불러오면 된다.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Cinemachine;

public class DollySetting : MonoBehaviour
{
    CinemachineVirtualCamera vCam;
    public CinemachineDollyCart cart;

    void Start()
    {
        vCam = this.GetComponent<CinemachineVirtualCamera>();
        
        CinemachineTrackedDolly dolly = vCam.GetCinemachineComponent<CinemachineTrackedDolly>();
        
        dolly.m_AutoDolly.m_Enabled = true;

        cart.m_Speed = 5.0f; // 카트 속도 수정
    }
}

 

Unity Plus:

 

Easy 2D, 3D, VR, & AR software for cross-platform development of games and mobile apps. - Unity Store

Have a 2D, 3D, VR, or AR project that needs cross-platform functionality? We can help. Take a look at the easy-to-use Unity Plus real-time dev platform!

store.unity.com

 

Unity Pro:

 

Unity Pro

The complete solutions for professionals to create and operate.

unity.com

 

Unity 프리미엄 학습:

 

Unity Learn

Advance your Unity skills with live sessions and over 750 hours of on-demand learning content designed for creators at every skill level.

unity.com

반응형

댓글