시네머신 개요
시네머신을 사용하려면 카메라 작동에 대한 새로운 사고 방식이 필요합니다. 예를 들어 신중하게 스크립트화된 카메라 동작에 이미 많은 투자를 했을 수 있습니다. 하지만 시네머신은 더 짧은 시간 내에 더 나은 결과는 아니더라도 동일한 결과를 제공할 수 있습니다. 이제 엔지니어를 번거롭게 하지 않고 빠르게 카메라를 생성하고 조정해 보십시오.
가상 카메라
시네머신은 새로운 카메라를 생성하지 않습니다. 대신에 여러 샷에 대해 단일 Unity 카메라에 지시합니다. 가상 카메라 로 이러한 샷을 구성할 수 있습니다. 가상 카메라는 Unity 카메라를 이동 및 회전하고 해당 설정을 제어합니다.
가상 카메라는 Unity 카메라와 별개의 게임 오브젝트이며, 독립적으로 동작합니다. 또한 서로 중첩되어 있지 않습니다. 예를 들어 씬은 다음과 같은 모습입니다.
가상 카메라로 수행할 수 있는 주요 작업은 다음과 같습니다.
씬에 Unity 카메라를 배치합니다.
무언가를 향해 Unity 카메라를 조준합니다.
Unity 카메라에 절차적 노이즈를 추가합니다. 노이즈는 핸드헬드 효과 또는 차량 흔들림 등을 시뮬레이션합니다.
시네머신은 많은 가상 카메라를 생성할 것을 권장합니다. 가상 카메라는 처리 능력을 거의 소모하지 않도록 설계되었습니다. 씬이 성능에 민감한 경우 성능 극대화를 위해 특정 순간에 필수 가상 카메라를 제외한 모든 카메라를 비활성화하십시오.
경험상 단일 샷에 단일 가상 카메라를 사용하는 것이 좋습니다. 이를 활용하여 극적이거나 미묘한 컷 또는 블렌딩을 구현해 보십시오. 예를 들어 다음과 같습니다.
두 캐릭터가 대화를 나누는 컷씬의 경우 세 개의 가상 카메라, 즉 두 캐릭터의 중간 샷을 위한 카메라 한 개와 각 캐릭터의 클로즈업을 위한 별도의 가상 카메라를 사용하십시오. 그런 다음 타임라인을 사용하여 오디오를 가상 카메라와 동기화하십시오.
두 개의 가상 카메라가 씬 내 동일한 포지션에 있도록 기존 가상 카메라를 복제하십시오. 두 번째 가상 카메라의 경우 FOV 또는 구도를 약간 변경하십시오. 플레이어가 트리거 영역에 들어가면 시네머신은 첫 번째 가상 카메라에서 두 번째 가상 카메라로 블렌딩하여 동작 변경을 강조합니다.
한 개의 가상 카메라는 언제든지 Unity 카메라를 제어할 수 있습니다. 이것이 라이브 가상 카메라입니다. 이 규칙의 유일한 예외는 한 가상 카메라에서 다음 가상 카메라로 블렌딩하는 동안입니다. 블렌딩하는 동안에는 두 가상 카메라가 모두 라이브 상태입니다.
시네머신 브레인
시네머신 브레인은 Unity 카메라 자체의 컴포넌트입니다. 시네머신 브레인은 씬에 있는 액티브 가상 카메라를 모두 모니터링합니다. 다음 라이브 가상 카메라를 지정하려면 원하는 가상 카메라의 게임 오브젝트를 활성화 또는 비활성화하십시오. 그러면 시네머신 브레인이 라이브 가상 카메라와 같거나 더 높은 우선 순위를 지닌 가장 최근에 활성화된 가상 카메라를 선택합니다. 또한 이전 가상 카메라와 새 가상 카메라 간의 컷이나 블렌딩을 수행합니다.
팁: 시네머신 브레인을 사용하여 동적 게임 이벤트에 실시간으로 응답하십시오. 우선 순위 조작을 통해 게임 로직이 카메라를 제어할 수 있습니다. 행동 예측이 때때로 어려운 라이브 게임플레이에 특히 유용합니다. 컷씬과 같은 예측 가능한 상황에서 타임라인을 사용하여 안무 카메라를 구성하십시오. 타임라인은 시네머신 브레인 우선 순위 시스템을 오버라이드하여 정확한 프레임별 카메라 제어 기능을 제공합니다.
이동 및 조준
가상 카메라의 Body 프로퍼티를 사용하여 씬에서 움직이는 방식을 지정할 수 있습니다. 회전 방식을 지정하려면 Aim 프로퍼티를 사용하십시오.
가상 카메라는 다음의 두 타겟을 갖습니다.
- Follow 타겟은 가상 카메라가 함께 따라 이동할 게임 오브젝트를 지정합니다.
- Look At 타겟은 게임 오브젝트가 조준할 게임 오브젝트를 지정합니다.
시네머신에는 이동 및 조준을 제어하기 위한 다양한 절차적 알고리즘이 포함되어 있습니다. 각 알고리즘은 특정 문제를 해결하며, 특정 요구 사항에 맞게 알고리즘을 커스터마이즈할 수 있는 프로퍼티를 보유합니다. 시네머신은 이러한 알고리즘을 CinemachineComponent
오브젝트로 구현합니다. CinemachineComponent
클래스를 사용하여 커스텀 이동 또는 조준 동작을 구현해 보십시오.
Body 프로퍼티는 씬에서 가상 카메라를 움직이기 위한 다음의 절차적 알고리즘을 제공합니다.
- Transposer: Follow 타겟과 고정된 관계로 움직입니다(감쇠는 선택 사항).
- Do Nothing: 가상 카메라를 움직이지 않습니다.
- Framing Transposer: Follow 타겟과 고정된 스크린 공간 관계로 움직입니다(감쇠는 선택 사항).
- Orbital Transposer: Follow 타겟과 가변 관계로 움직이며, 선택적으로 플레이어 입력을 허용합니다.
- Tracked Dolly: 사전 정의된 경로를 따라 움직입니다.
- Hard Lock to Target: Follow 타겟과 동일한 포지션을 사용합니다.
Aim 프로퍼티는 가상 카메라를 회전하여 Look At 타겟을 향하도록 만들기 위한 다음의 절차적 알고리즘을 제공합니다.
- Composer: 구성적 제약이 있는 카메라 프레임에 Look At 타겟을 유지합니다.
- Group Composer: 카메라 프레임에 여러 개의 Look At 타겟을 유지합니다.
- Do Nothing: 가상 카메라를 회전하지 않습니다.
- POV: 사용자의 입력에 따라 가상 카메라를 회전합니다.
- Same As Follow Target: 카메라의 회전을 Follow 타겟의 회전으로 설정합니다.
- Hard Look At: 카메라 프레임의 중간에 Look At 타겟을 유지합니다.
샷 구성
Framing Transposer, Composer 및 Group Composer 알고리즘은 샷을 구성하기 위한 카메라 프레임의 영역을 정의합니다.
데드 존: 시네머신이 타겟을 유지하는 프레임 영역입니다.
소프트 존: 타겟이 프레임의 이 영역에 들어가면 카메라가 방향을 다시 설정하여 데드 존으로 돌려보냅니다. 이 작업은 감쇠 설정에 지정된 시간에 따라 천천히 또는 빠르게 수행됩니다.
화면: 데드 존 중심의 화면 포지션입니다. 0.5는 화면의 중심입니다.
감쇠: 실제 카메라 조작자가 무거운 물리적 카메라를 조작하는 동안 발생하는 지연을 시뮬레이션합니다. 감쇠는 카메라가 타겟을 추적하는 동안 타겟이 소프트 존 에 들어가면 카메라 응답을 빠르거나 느리게 지정합니다. 작은 숫자를 사용하면 응답이 더 빠른 카메라를 시뮬레이션하여 카메라를 빠르게 움직이거나 조준하여 타겟을 데드 존 내에 유지할 수 있습니다. 숫자가 높을수록 더 무거운 카메라를 시뮬레이션하며, 값이 클수록 시네머신이 타겟이 소프트 존에 더 많이 들어가도록 허용합니다.
게임 창 가이드 이러한 영역을 인터랙티브하고 시각적인 방식으로 표시합니다. 이 가이드는 게임 뷰에서 색조 영역으로 나타납니다.
투명한 영역은 데드 존 을 나타내고, 파란색 영역은 소프트 존 을 나타냅니다. 소프트 존과 데드 존의 포지션은 화면 포지션을 나타냅니다. 붉은색 영역은 타겟이 절대 들어가지 않는 통과 금지 영역을 나타냅니다. 노란색 사각형은 타겟을 나타냅니다.
광범위한 카메라 동작을 얻으려면 이 영역을 조정하십시오. 이렇게 하려면 게임 뷰에서 가장자리를 드래그하거나 인스펙터 창에서 해당 프로퍼티를 편집해야 합니다. 예를 들어 더 높은 감쇠 값을 사용하여 더 크고 무거운 카메라를 시뮬레이션하거나, 소프트 존 과 데드 존 을 확대하여 카메라 프레임의 중간에 타겟 모션의 영향을 받지 않는 영역을 만들 수 있습니다. 이 기능은 타겟이 약간만 움직일 때는 카메라가 타겟을 추적하지 않도록 해야 하는 애니메이션 주기 등에 사용하십시오.
노이즈를 사용하여 카메라 흔들림 시뮬레이션
실제 물리적 카메라는 무겁거나 성가십니다. 카메라는 카메라 조작자가 손에 휴대하거나 이동 중인 차량과 같은 불안정한 물체에 장착합니다. Noise 프로퍼티를 사용하면 이러한 실제 속성을 시뮬레이션하여 영화 같은 효과를 구현할 수 있습니다. 예를 들어 달리는 캐릭터를 따라갈 때 카메라 흔들림을 추가하여 플레이어가 액션에 더욱 몰입하도록 만들 수 있습니다.
프레임이 업데이트될 때마다 시네머신은 카메라 움직임과 별도로 노이즈를 추가하여 타겟을 따라가도록 만듭니다. 노이즈는 이후 프레임에서 카메라의 포지션에 영향을 주지 않습니다. 이렇게 분리를 통해 감쇠 같은 프로퍼티가 예상대로 동작합니다.