Choose your operating system:
Windows
macOS
Linux
버추얼 카메라 멀티 유저 퀵스타트 가이드
개요
버추얼 카메라 멀티 유저(Virtual Camera Multi-User) 구성을 사용하면 다수의 디바이스를 한데 연결하여 동일한 씬 내에서 버추얼 카메라를 제어 및 표시할 수 있습니다. 이를 위해서는 언리얼 엔진에 포함되어 있는 스위치보드 애플리케이션을 사용하면 됩니다.
스위치보드는 네트워크상에서 다수의 원격 디바이스를 제어하는 Python 애플리케이션입니다. 이 구성은 각 디바이스에 에디터 또는 렌더러 등의 버추얼 프로덕션 롤(role)을 지정합니다.
버추얼 프로덕션 롤은 환경설정 파일에서 생성할 수 있으며, 동일한 씬에서 협업하는 서로 다른 사용자들을 구분하는 데 사용될 수 있습니다. 스위치보드는 이러한 롤을 사용하여 씬 내의 특정 버추얼 카메라를 누가 소유하는지, 출력 렌더링 시기와 같은 최종 변경 사항을 누가 받아야 하는지 결정합니다.
버추얼 카메라 멀티 유저 구성은 동일한 씬 내에서 동시에 작업하는 다수의 조작자가 원활하게 협업할 수 있게 해줍니다.
가이드 목표
이 퀵스타트 가이드에서는 버추얼 카메라의 멀티 유저 지원을 구성하는 방법에 대해 살펴봅니다.
학습 목표
이 가이드에서는 다음과 같은 내용을 학습합니다.
-
프로젝트의 버추얼 프로덕션 롤 생성
-
스위치보드 애플리케이션 설치 및 환경설정
-
스위치보드를 사용하여 언리얼 엔진의 두 인스턴스를 실행하고, 버추얼 카메라의 정보가 각 인스턴스 간에 어떻게 복제되는지 확인
1 - 필수 구성
-
세팅(Settings) > 프로젝트 세팅(Project Settings) 으로 이동하여 프로젝트 세팅 창을 열고 버추얼 프로덕션(Virtual Production) 카테고리를 탐색합니다.
-
롤(Roles) 옆의 편집(Edit) 드롭다운을 클릭하여 새 태그 소스 추가(Add New Tag Source) 카테고리를 펼칩니다. 이름(Name) 에 `VPRoles.ini`를 입력하고 **새 소스 추가(Add New Source)** 버튼을 클릭합니다.
-
편집 드롭다운을 다시 클릭하여 새 게임플레이 태그 추가(Add New Gameplay Tag) 카테고리를 펼칩니다. 소스(Source) 옆의 드롭다운을 클릭하고 `VPRoles.ini`를 선택합니다. 이름에 **Editor** 를 입력하고 **새 태그 추가** 버튼을 클릭합니다.
-
위 단계를 반복하여 Render 라는 이름의 새 태그를 추가합니다.
-
멀티 유저 편집(Multi-User Editing) 카테고리로 이동하여 유효성 검사 모드(Validation Mode) 드롭다운을 클릭합니다. 소프트 자동 진행(Soft Auto Proceed) 을 선택합니다. 프로젝트 세팅 창을 닫습니다.
-
세팅 > 플러그인(Plugins) 을 클릭하여 플러그인 창 을 엽니다.
-
버추얼 프로덕션 카테고리를 클릭하여 스위치보드 플러그인을 활성화 합니다. 팝업 창에서 예(Yes) 를 선택하고 지금 재시작(Restart Now) 버튼을 클릭하여 에디터를 재시작합니다.
-
에디터가 재시작되면 툴바 의 스위치보드 버튼을 클릭하여 애플리케이션을 실행합니다.
애플리케이션을 처음 실행하는 경우, 애플리케이션이 필요한 종속성을 모두 다운로드 및 설치해야 하므로 시간이 좀 걸릴 수 있습니다.
-
종속성이 모두 설치되고 나면 새 스위치보드 환경설정 추가(Add new Switchboard Configuration) 창이 표시됩니다. 필요한 필드를 전부 채우고 확인(OK) 버튼을 클릭합니다.
-
프로젝트로 돌아가 스위치보드 버튼 옆의 작은 화살표 를 클릭합니다. 스위치 보드 리스너 실행(Launch SwitchboardListener) 을 클릭합니다.
.(convert:false)
섹션 결과
이제 스위치보드에 새 디바이스를 추가하고 버추얼 카메라에서 멀티 유저를 사용할 수 있게 되었습니다.
자세한 내용은 스위치보드 및 스위치보드 퀵스타트 가이드 문서를 참고하세요.
2 - 버추얼 카메라에서 멀티 유저 사용
-
스위치보드 에서 디바이스 추가(Add Device) 드롭다운을 클릭하고 언리얼(Unreal) 을 선택합니다. Editor 라는 이름과 디바이스의 IP 주소 를 추가합니다.
-
위 단계를 반복하여 Render 라는 이름의 언리얼 엔진 디바이스를 하나 더 추가합니다.
-
각 언리얼 디바이스 옆의 연결 아이콘 을 클릭하여 스위치 보드 리스너(Switchboard Listener) 에 디바이스를 연결합니다. 목록 맨 위의 연결 아이콘을 클릭하여 목록에 나열된 디바이스를 모두 연결할 수도 있습니다.
-
세팅 > 세팅 을 클릭하여 '세팅' 옵션을 엽니다. 멀티 유저 서버(Multi User Server) 섹션으로 스크롤을 내려 자동 참여(Auto Join) 를 활성화합니다.
-
Editor 디바이스 섹션으로 스크롤을 내려 롤 드롭다운을 클릭합니다. Editor 롤을 선택합니다.
-
Render 디바이스 섹션으로 스크롤을 내려 목록에서 Render 롤을 선택합니다. '세팅' 창을 닫습니다.
섹션 결과
스위치보드에 언리얼 엔진 디바이스 두 개를 추가하고 적절하게 환경설정을 했습니다. 이제 각 디바이스를 실행하고 버추얼 카메라에서 멀티 유저를 사용할 준비가 되었습니다.
3 - 버추얼 카메라에서 멀티 유저 용
-
Editor 디바이스 옆의 실행(Launch) 아이콘을 클릭하여 실행합니다. 언리얼 엔진이 실행되면 창(Window) > 개발자 툴(Developer Tools) > 멀티 유저 브라우저(Multi-User Browser) 로 이동하여 멀티 유저 브라우저 창을 엽니다. 여기서는 에디터가 멀티 유저 세션에 연결되어 있는지 확인할 수 있습니다.
-
월드 아웃라이너 에서 버추얼 카메라(Virtual Camera) 액터를 선택합니다. 디테일(Details) 패널로 이동하여 VCAM 컴포넌트를 선택합니다. 버추얼 카메라 섹션으로 스크롤을 내려 롤 옆의 드롭다운을 클릭합니다. Editor 롤을 선택합니다. 활성화됨(Enabled) 체크박스를 클릭하여 카메라를 활성화합니다.
-
스위치보드에서 실행 아이콘을 클릭하여 Render 디바이스를 실행합니다. 위 단계를 따라 멀티 유저 브라우저 를 사용하여 에디터가 멀티 유저 세션에도 연결되어 있는지 확인합니다.
-
이제 두 에디터 인스턴스를 모두 실행했으니 Editor 디바이스의 버추얼 카메라를 이동하고 이 변경 사항이 Render 디바이스에 즉시 리플리케이션되는지 확인합니다. 아래 예시에서는 Editor 디바이스가 카메라를 이동하는 경우 Render 디바이스에서 이 변경 사항을 수신합니다.
섹션 결과
이 섹션에서는 스위치보드를 사용하여 서로 자동으로 커뮤니케이션하는 여러 개의 언리얼 엔진 인스턴스를 실행하는 방법에 대해 살펴봤습니다. 또한 'Editor' 롤이 할당된 버추얼 카메라를 이동하면 네트워크 내의 다른 디바이스로 이 변경 사항이 리플리케이션되는 방식도 확인할 수 있었습니다.
4 - 멀티 유저 구성의 이해
버추얼 카메라 멀티 유저 구성을 사용하여 모든 버추얼 프로덕션 환경에서 필수적인 스테이지 구성을 생성해봅니다. 이 섹션에서는 보다 복잡한 구성을 통해 멀티 유저 구성의 작동 원리를 더 깊이 이해할 수 있는 기회를 가집니다.
이 예시에서는 개별적인 버추얼 카메라 3개가 씬에 준비되어 있습니다.
-
VCam1 - Editorial 롤이 할당되어 있습니다.
-
VCam2 - Main 롤이 할당되어 있습니다.
-
VCam3 - Render 롤이 할당되어 있습니다.
각 버추얼 카메라는 스위치보드 를 통해 멀티 유저 서버와 연결되어 있으며, 각 카메라의 소유권을 기반으로 카메라 정보를 주고 받습니다.
스위치보드 에서 실행되는 디바이스에는 각각의 롤이 할당되어 있습니다. 이 롤이 씬에 배치되어 있는 버추얼 카메라의 롤과 일치하는 경우 디바이스는 카메라의 소유권을 가지게 되며 자유롭게 조작할 수 있습니다. 따라서 각 디바이스는 다른 디바이스와의 충돌 없이 지정된 카메라를 씬에서 하나씩 갖게 됩니다.
이 예시에서 'Editorial' 롤이 할당되어 있는 디바이스는 'VCam1'을 소유하며 카메라 정보를 다른 두 디바이스로 전송합니다. 'Editorial' 롤은 'VCam2'나 'VCam3'을 소유하지 않기 때문에 이들 카메라에 대한 정보는 해당 디바이스에서 수신하기만 합니다.
이 관계는 아래 차트로 설명할 수 있습니다.
이 구성을 통해 서로 다른 카메라 조작자 다수가 씬(보통 에디터) 내에서 서로 상호작용할 수 있으며, 이 구성으로 모든 데이터를 수신하고 최종 렌더를 화면에 표시할 수 있습니다. 이 디바이스에는 보통 'Render' 롤이 할당됩니다.