인카메라 VFX 퀵 스타트

LED 볼륨 내 인카메라 VFX 작업 시작을 위한 가이드

Windows
MacOS
Linux

이 퀵스타트 페이지는 언리얼 엔진에서 인카메라 VFX 작업이 가능하도록 프로젝트를 구성하는 과정을 보여줍니다. 이 가이드를 완료하면 다음과 같은 작업을 할 수 있습니다.

  • nDisplay 노드의 동기화된 클러스터 구성

  • 인카메라 VFX의 내외부 프러스텀 구성

  • 라이브 링크로 통합한 리얼타임 카메라 트래킹 시스템 구성

  • 토글 가능한 크로마 키 마커와 그린 스크린 구성

  • 색 보정 볼륨을 통해 물리적 세트에 맞춰 라이팅 및 색상 조정

  • 모든 클러스터 노드 일괄 실행 및 세트에서의 테스트

1단계 - 인카메라 VFX용 프로젝트 구성

가장 쉽게 인카메라 VFX 프로젝트를 구성하는 방법은 인카메라 VFX 샘플 프로젝트로 생성하는 것입니다.

  1. 에픽게임즈 런처(Epic Games Launcher) 를 엽니다.

  2. 학습(Learn) 탭에서 인카메라 VFX 샘플(In-Camera VFX Example) 프로젝트를 찾습니다.

  3. 프로젝트 페이지에서 무료(Free) 버튼을 클릭합니다.

  4. 프로젝트 생성(Create Project) 을 클릭합니다.

  5. 프로젝트를 저장할 머신 위치를 지정하고 생성(Create) 을 선택합니다.

  6. 언리얼 엔진 을 실행하고 인카메라 VFX 샘플(In-Camera VFX Example) 프로젝트를 엽니다.

샘플 프로젝트에서 콘텐츠(Content) > 맵(Maps) 으로 이동하면 두 개의 레벨, 메인(Main)빈 스테이지(EmptyStage) 가 있습니다. 언리얼 엔진의 인카메라 VFX 작업에 대해 학습하려면 메인(Main) 레벨을 엽니다. 아무것도 없는 구성으로 시작하려면 빈 스테이지(EmptyStage)로 프로젝트를 시작하세요. 샘플 프로젝트와 레벨은 자동으로 필수 플러그인을 활성화하고, 유용한 블루프린트를 제공하고, 추가 세팅을 구성하며, 샘플 구성 파일을 포함하고 있습니다.

플러그인

  • nDisplay: 다중 디스플레이로 렌더링하는 언리얼 엔진 기술입니다.

  • Live Link: 언리얼 엔진의 모션 캡처, 카메라 트래킹 등 라이브 데이터를 수집하기 위한 API입니다.

  • Live Link Over nDisplay: 라이브 링크 데이터를 받아서 트래킹 데이터를 효율적이고 동기화된 방식으로 재분배하는 노드입니다.

  • Multi-User Editing: 공유 세션에서 여러 에디터를 사용할 수 있습니다.

  • Virtual Production Utilities: 버추얼 프로덕션에 유용한 유틸리티 플러그인입니다.

  • Media Framework Utilities: SDI 캡처 카드상의 라이브 비디오, 타임코드 그리고 젠록과 연관된 유틸리티 플러그인입니다.

  • Aja 또는 Blackmagic Media Player: SDI 캡처 카드를 지원합니다.

블루프린트

인카메라 VFX 샘플 프로젝트에서는 레벨이 매우 특정한 계층구조로 구성되어 있습니다. 이 계층구조는 스테이지 포지셔닝을 제어하는 데 사용되며, 물리적 스테이지와 버추얼 스테이지가 모두 표시되도록 합니다.

인카메라 VFX 샘플 프로젝트에 포함된 블루프린트

블루프린트 오브젝트

설명

BP_StageOrigin

스테이지 원점은 스테이지에 자손 액터로 어태치된 모든 트래킹된 카메라, 캐릭터 그리고 소품의 움직임을 제어하는 최상위 컨트롤입니다.

BP_InCameraStageSettings

이 에셋은 스테이지 커스터마이징 세팅을 포함합니다. 프로젝트에서 기본 크로마 키 마커를 제공하지만, 디테일 패널의 크로마키(Chromakey) 섹션에서 이 에셋의 텍스처를 변경할 수 있습니다. 오브젝트를 레벨에 추가하되, LED 벽에 표시되지 않게 하려면 렌더링 섹션에서 히든 레이어(Hidden Layers) 배열에 추가하면 됩니다. 라이트 카드 섹션에서 라이트 카드(Light Cards) 레이어를 지정할 수 있습니다. 이 라이트는 LED 스테이지에 라이트를 제공하기 위해 외부 프러스텀에서만 보입니다.

BP_SamplePawn

이 오브젝트는 가상 세계에 있는 트래킹된 카메라의 시작 위치를 생성하고, 해당 카메라의 전반적인 움직임을 주도합니다. 폰이 제대로 기능하려면 카메라 컴포넌트를 포함해야 하고 ‘Auto Possess Player'가 ‘Player 0'으로 설정되어야 합니다.

BP_IncameraSettings

이 블루프린트는 내부 프러스텀에 쓰이는 카메라를 할당합니다. 이 카메라 할당은 ‘디테일' 패널의 ‘디폴트' 섹션에 있는 ‘Reprojected Cine Camera' 프로퍼티에서 지정됩니다. 이 블루프린트는 내부 프러스텀의 블렌딩 영역과 인카메라 프레임 섹션의 FOV 배수도 결정합니다.

BP_WarpMonitor

이 블루프린트는 스크린 지오메트리 설명과 뷰포트 워프에 쓰이는 스태틱 메시를 할당합니다. 이 메시는 LED 화면의 센티미터 단위로 스케일해야 하며, 트래킹 원점에 상대적인 오프셋을 갖습니다.

InnerFrustumCamera

버추얼 월드의 카메라 트래킹을 주도하는 시네 카메라 에셋입니다.

GreenScreenPlane

크로마 키 머티리얼이 적용되는 시네 카메라에 어태치된 평면입니다. 이 에셋의 비저빌리티를 토글하여 그린 스크린을 켜고 끕니다.

DisplayClusterRootActor

외부 프러스텀이 투영되는 관점을 정의하는 DisplayClusterRootActor의 위치입니다.

nDisplay 환경설정 파일

nDisplay 환경설정 파일은 컴퓨터와 디스플레이의 관계 및 디테일을 설명합니다. 샘플 nDisplay 환경설정 파일은 샘플 프로젝트에 포함되어 있습니다. 머신의 파일 매니저로 /Content/ExampleConfigs 에 있는 프로젝트 폴더에서 찾을 수 있습니다. nDisplay 환경설정 파일의 자세한 정보는 nDisplay 환경설정 파일 레퍼런스를 참조하세요.

2단계 - LED 패널 지오메트리 생성

이 섹션은 곡면 LED 벽을 구현하는 방법의 예시를 보여줍니다. LED 볼륨마다 다를 수 있기 때문에 사용하는 디스플레이의 크기와 레이아웃에 맞게 다음 단계를 수정하면 됩니다.

다음 단계는 실제 LED 패널을 나타내는 지오메트리를 만드는 방법을 보여줍니다. 이 예시에서 곡면 벽은 두 개의 메시로 만들어지는데, 각각 별도의 머신으로 렌더링됩니다. 메시의 각 사각형은 픽셀 피치 2.6mm, 500mm x 500mm 크기인 캐비닛을 나타냅니다.

곡면 LED 벽의 메시 표현. 이미지를 클릭하면 최대 크기로 볼 수 있습니다.

메시의 위치 및 방향은 실제 LED 패널과 일치하도록 모델링되어야 합니다. 이 예시에서는 수직으로 모델링했으며 지오메트리는 센티미터 단위로 모델링해야 합니다.

각 메시는 두 개의 UV 세트를 특정 순서로 가져야 합니다. 첫 번째 UV 세트는 nDisplay용 PICP_Mesh 투영의 계산에 쓰입니다. 두 번째 UV 세트는 크로마 키 트래킹 마커가 두 뷰포트의 이음새 사이를 적절하게 이동하도록 하는 데 쓰입니다.

UV 세트를 다음 조건에 따라 생성하세요.

  • 첫 UV 세트는 0~1 범위 내에서 전체 UV 공간을 차지하도록 스케일이 조절되어야 합니다. 이 UV 세트는 늘어나지 않도록 최대한 균일하게 펼쳐져야 하며 스케일 조절 사 균일하지 않아도 됩니다. UV 에지에 패딩이 없는지 확인하고 UV가 0~1 범위를 넘어가지 않도록 하세요.

    메시의 첫 번째 UV 세트

  • 두 번째 UV 세트는 실제 하드웨어 구성과 동일한 이음새에서 UV가 일치하도록 정렬되어야 합니다. 메시와 종횡비도 같아야 합니다.

    메시의 두 번째 UV 세트

메시가 생성되면 3D 모델링 소프트웨어에서 지오메트리를 익스포트하여 언리얼 프로젝트로 임포트합니다.

3단계 - 프로젝트 내 LED 스크린 정의

세트에 있는 것을 반영하려면 프로젝트 내 화면의 레이아웃과 지오메트리를 커스터마이징해야 합니다. 이러한 메시는 실제 LED 벽의 물리적 위치와 크기가 같고, 트래킹 시스템에 상대적이어야 합니다. 세트에서 쓰이는 트래킹 시스템은 영점이 됩니다. 이러한 메시는 트래킹 시스템에서 같은 월드 좌표에 배치되어야 합니다. 트래킹 제공자와 상의하여 영점을 찾고 상대적인 위치를 측정하여 오프셋을 파악하세요.

엔진 내 스크린의 레이아웃 및 지오메트리를 수정하고 커스터마이징하려면 다음 단계를 따르세요.

  1. 프로젝트의 월드 아웃라이너(World Outliner) 에서 BP_WarpMonitor 편집(Edit BP_WarpMonitor) 을 클릭합니다.

    월드 아웃라이너에서 하이라이트된 Edit BP_WarpMonitor

  2. BP_WarpMonitor에 대한 블루프린트 에디터(Blueprint Editor) 에서 뷰포트(Viewport) 탭으로 전환합니다.

  3. 샘플의 BP_WarpMonitor에는 기본적으로 4개의 스태틱 메시가 있습니다. 이 스태틱 메시 4개를 선택하여 삭제하세요.

    BP_WarpMonitor의 기본 메시 4개

  4. 임포트된 메시 2개를 찾아서 컴포넌트(Components) 패널의 루트(root) 오브젝트 아래에 드롭하세요.

    BP_WarpMonitor로 임포트된 메시

  5. 현실의 트래킹 원점과 패널 위치와 방향이 일치하도록 메시를 회전 및 변환하세요. 이 샘플에서 패널은 트래킹 원점 앞 135cm, 오른쪽 50cm, 위 13cm에 있습니다.

    트래킹 원점과 LED 벽의 물리적 레이아웃이 일치하도록 배치 및 회전된 BP_WarpMonitor

  6. 블루프린트 에디터(Blueprint Editor) 에서 이벤트 그래프(Event Graph) 탭으로 전환합니다.

  7. 워프 메시를 뷰포트에 할당(Assign Warp Mesh to Viewport) 함수는 런타임에서 메시를 워프합니다. 현재 메시는 두 개뿐이므로 워프 메시를 뷰포트에 할당(Assign Warp Mesh to Viewport) 노드 4개 중에서 마지막 2개를 삭제합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  8. 왼쪽 벽의 메시를 컴포넌트(Components) 에서 이벤트 그래프(Event Graph) 로 드래그합니다. 이를 워프 메시를 뷰포트에 할당(Assign Warp Mesh to Viewport) 함수 중 하나의 메시 컴포넌트(Mesh Component) 입력에 연결합니다. 이름을 Viewport_Id 에서 vp_1 로 변경합니다. 오른쪽 벽 메시와 나머지 하나의 워프 메시를 뷰포트에 할당(Assign Warp Mesh to Viewport) 도 똑같이 합니다. 두 번째 Viewport_Id 의 이름을 vp_2 로 변경합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  9. 블루프린트 에디터(Blueprint Editor) 에서 컴포넌트(Components) 탭의 메시를 선택합니다. 메시의 디테일(Details) 패널에 있는 렌더링(Rendering) 섹션에서 지오메트리가 렌더링되지 않도록 비저블(Visible) 파라미터를 false 로 설정합니다.

  10. 블루프린트를 컴파일(Compile) 하고 저장(Save) 합니다.

4단계 - nDisplay 환경설정 파일 구성

환경설정 파일을 새로 만들 수도 있지만, 제공된 샘플 중 하나로 시작하여 여러분의 구성에 맞게 수정하는 것을 적극 권장합니다. 이 샘플 환경설정 파일은 각 섹션에 대한 간단한 구성과 추가 문서를 포함합니다.

다음 단계를 따라서 앞서 구성한 화면과 맞춰 한 샘플 환경설정 파일을 수정해 보세요.

  1. 머신의 파일 매니저를 사용하여 프로젝트 폴더로 이동합니다.

  2. 텍스트 에디터에서 Content/ExampleConfigs/Simple_InCameraFrustum.cfg 파일을 엽니다.

  3. 파일의 클러스터 노드(Cluster Nodes) 섹션에서 다음을 수행합니다.

    1. 클러스터 노드 하나에 master="true" sound="true" 를 추가하여 주 노드로 설정합니다.

    2. 노드의 IP 주소(IP addresses) 가 머신과 일치하도록 변경합니다.

    3. 두 창을 클러스터 노드에 할당합니다.

      [cluster_node] id="node_1" addr="192.168.1.100" window="wnd_1" master="true" sound="true"
      [cluster_node] id="node_2" addr="192.1.68.1.38" window="wnd_2"
  4. 파일의 애플리케이션 창(Application windows) 섹션에서 다음을 수행합니다.

    1. 머신의 모니터 해상도를 윈도우 노드에 추가합니다. 이 샘플의 모니터 해상도는 2560x1440입니다.

    2. 모든 인카메라 창은 내부 프러스텀을 담당하는 rtt_inner 뷰포트를 포함해야 합니다.

    3. BP_WarpMonitor 블루프린트의 이름과 일치하는 뷰포트 vp_1vp_2 를 두 창에 할당합니다.

      [window] id="wnd_1" viewports="rtt_inner, vp_1" fullscreen="true" WinX="0" WinY="0" ResX="2560" ResY="1440"
      [window] id="wnd_2" viewports="rtt_inner, vp_2" fullscreen="true" WinX="0" WinY="0" ResX="2560" ResY="1440"
  5. 파일의 뷰포트(Viewports) 섹션에서 다음을 수행합니다.

    1. LED 패널 해상도를 해당 뷰포트에 추가합니다. 이 샘플에서는 캐비닛 크기가 500mmx500mm, 픽셀 피치가 2.6mm이므로 캐비닛마다 192x192 픽셀이 있습니다. 따라서 4x4 그리드 캐비닛인 왼쪽 벽의 해상도는 768x768, 3x4 그리드 캐비닛인 오른쪽 벽의 해상도는 768x576입니다.

    2. Rt_inner 뷰포트를 샘플 환경설정과 동일하게 유지하세요.

      [viewport] id="vp_1"  x="0" y="0" width="768" height="768" projection="proj_warp" buffer_ratio="1"
      [viewport] id="vp_2" x="0" y="0" width="768" height="576" projection="proj_warp" buffer_ratio="1"
      [viewport] id="rtt_inner"   x="0" y="1440" width="1920" height="1080" projection="proj_incamera" rtt=true
  6. 투영 정책(Projection policies) 섹션에서 PICP_Mesh카메라(camera) 투영 정책을 추가하여, nDisplay가 제공된 메시를 기반으로 투영하고 뷰포트가 카메라에 기반하도록 합니다.

    [projection] id="proj_warp"      type="picp_mesh"
    [projection] id="proj_incamera"     type="camera"
  7. 파일의 나머지 부분은 그대로 둡니다. 파일(File) > 다른 이름으로 저장(Save as)을 선택하여 환경설정 파일의 이름을 바꿉니다. 이 샘플에서 최종 환경설정 파일은 다음과 같아야 합니다.

    [info] version="23"
    
    [cluster_node] id="node_1" addr="192.168.1.100" window="wnd_1" master="true" sound="true"
    [cluster_node] id="node_2" addr="192.1.68.1.38" window="wnd_2"
    
    [window] id="wnd_1" viewports="rtt_inner, vp_1" fullscreen="true" WinX="0" WinY="0" ResX="2560" ResY="1440"
    [window] id="wnd_2" viewports="rtt_inner, vp_2" fullscreen="true" WinX="0" WinY="0" ResX="2560" ResY="1440"
    
    [viewport] id="vp_1"  x="0" y="0" width="768" height="768" projection="proj_warp" buffer_ratio="1"
    [viewport] id="vp_2" x="0" y="0" width="768" height="576" projection="proj_warp" buffer_ratio="1"
    [viewport] id="rtt_inner"   x="0" y="1440" width="1920" height="1080" projection="proj_incamera" rtt=true
    
    [projection] id="proj_warp"      type="picp_mesh"
    [projection] id="proj_incamera"     type="camera"
    
    [camera] id="camera_static" loc="X=0,Y=0,Z=0"
    
    [general] swap_sync_policy="1"
    
    [network] cln_conn_tries_amount="10" cln_conn_retry_delay="1000" game_start_timeout="30000" barrier_wait_timeout="5000"

nDisplay 환경설정 파일의 자세한 정보는 nDisplay 환경설정 파일 레퍼런스를 참조하세요. nDisplay 보호 정책에서 메시 기반 정책과 PICP_Mesh 투영 정책을 읽을 수 있습니다.

파일 환경설정이 잘못 구성되면 렌더링 노드가 실행되지 않습니다. 각 노드는 상호참조를 통해 다른 노드가 모두 정상 실행되고 있는지 확인합니다. 환경설정이 잘못된 노드가 있으면 모든 노드가 닫힙니다. 이 문제가 발생한 경우, 각 노드가 Project/Saved/Logs 에 추가하는 로그 파일에서 더 자세한 정보를 확인하실 수 있습니다.

5단계 - nDisplay로 프로젝트 실행

nDisplay가 네트워크 및 인카메라 VFX용 디스플레이 디바이스와 어떻게 함께 작동하는지 보여주는 도표. 이미지를 클릭하면 최대 크기로 볼 수 있습니다.

nDisplay 구성에는 컴퓨터와 추가 컴퓨터의 클러스터 가 있습니다. 주 컴퓨터는 입력 정보의 관리 및 분배의 중심 역할을 합니다. 주 컴퓨터는 클러스터의 모든 PC가 동기화되어 있고, 입력과 데이터를 동시에 수신하는지도 확인합니다. nDisplay 구성의 자세한 정보는 nDisplay 개요를 참조하세요.

nDisplayListener

nDisplayListener는 주 컴퓨터와 클러스터 내 PC에 상주하는 미니멀리스트 애플리케이션입니다. 리스너는 경로와 인수 목록을 사용한 기존 프로젝트 실행, 기존 프로젝트 종료 등 다양한 원격 명령어를 수신할 수 있습니다. 리스너는 런처보다 먼저 실행되어야 합니다.

nDisplayListener를 모든 컴퓨터에서 실행하려면 아래 단계를 따르세요.

  1. 머신에서 언리얼 엔진이 설치된 폴더를 열고 UE_4.25/Engine/Binaries/DotNET/ 으로 이동합니다.

    사용자 컴퓨터 내 nDisplayListener 및 nDisplayLauncher의 위치

  2. 해당 폴더에서 nDisplayListener.exe 를 실행합니다.

    실행 중인 nDisplayListener의 스크린샷

런처

런처는 백그라운드에서 리스너를 실행 중이면서 이용 가능한 컴퓨터 목록에서 여러 프로젝트를 동시에 실행합니다. 런처는 로컬 네트워크의 원하는 컴퓨터에서 실행할 수 있습니다.

nDisplayLauncher를 한 컴퓨터에서 실행하려면 아래 단계를 따르세요.

  1. 머신에서 언리얼 엔진이 설치된 폴더를 열고 UE_4.25/Engine/Binaries/DotNET/ 으로 이동합니다.

    사용자 컴퓨터 내 nDisplayListener 및 nDisplayLauncher의 위치

  2. nDisplayLauncher.exe 를 실행하여 nDisplay 런처 창을 엽니다.

  3. 런처 탭(Launcher Tap) 의 nDisplay 런처 창에서 에디터에 프로젝트 추가 -game(Add Project in Editor -game) 을 선택합니다.

    ‘에디터에 프로젝트 추가 -game'이 하이라이트된 nDisplay 런처 창

  4. Engine\Binaries\Win64 에 있는 UE4 실행 파일을 찾습니다. UE4Editor.exe 를 선택하고 열기(Open) 를 클릭합니다.

  5. UE4 프로젝트 선택(Select UE4 Project) 창에서 실행하려는 UE 프로젝트 파일로 이동합니다. 프로젝트를 선택하고 열기(Open) 를 클릭합니다. 그러면 엔진과 프로젝트 경로가 애플리케이션(Applications) 목록에 추가됩니다.

  6. 환경설정 파일(Config Files) 필드 오른쪽에서 추가(Add) 를 선택합니다. 프로젝트에 대한 nDisplay 환경설정 파일로 이동하여 선택합니다.

  7. 애플리케이션(Application) 목록에서 프로젝트를 선택한 다음, 실행(Run) 을 클릭합니다.

  8. nDisplay가 열리고 프로젝트가 실행됩니다.

참고: 패키지로 만든 프로젝트 실행 파일을 모든 컴퓨터에 배포할 수도 있습니다. 하지만 이 방식을 사용하면 다른 실행 파일을 패키지로 만들지 않는 한, 모든 컴퓨터에 업데이트를 보낼 수 없습니다. 에디터에서 프로젝트를 -game 으로 실행함으로써 프로젝트의 변경 사항을 멀티 유저 세션의 다른 컴퓨터로 보낼 수 있습니다.

6단계 - 라이브 링크

라이브 링크는 언리얼 엔진의 카메라, 라이트, 트랜스폼, 기본 프로퍼티 등 라이브 데이터 수신용 프레임워크입니다. 인카메라 VFX에서 라이브 링크는 트래킹된 카메라 정보를 배포하는 데 필수적인 역할을 수행하며, nDisplay와 함께 사용하여 트래킹 정보를 각 클러스터 노드에 전달할 수 있습니다. 언리얼 엔진은 라이브 링크를 통해 Vicon, Stype, Mo-Sys, Ncam 등 다양한 카메라 트래킹 파트너와 기타 전문 트래킹 솔루션을 지원합니다.

참고: 이 단계에는 라이브 링크 소스가 필요합니다.

nDisplay로 라이브 링크를 통해 내부 카메라 프러스텀을 트래킹하려면 다음을 수행하세요.

  1. 언리얼 에디터(Unreal Editor) 에서 메인 메뉴로 이동한 다음, 창(Window) 을 선택합니다. 드롭다운에서 라이브 링크(Live Link) 를 선택하여 라이브 링크 패널을 엽니다.

    창 드롭다운에서 라이브 링크가 하이라이트된 에디터

  2. 라이브 링크 패널에서 소스 추가(Add Source) 버튼을 선택합니다. 드롭다운에서 사용할 라이브 링크 소스를 선택합니다.

    라이브 링크 소스를 추가할 때 사용 가능한 Mobu 라이브 링크의 스크린샷

    이 예시에서는 Motion Builder를 라이브 링크 소스로 사용합니다.

  3. 프리셋(Presets) 을 클릭한 다음, 프리셋으로 저장(Save as Preset) 을 선택합니다.

  4. 메인 메뉴에서 편집(Edit) > 프로젝트 세팅(Project Settings) 을 선택합니다.

  5. 프로젝트 세팅(Project Settings) 플러그인(Plugins) 에서 라이브 링크(Live Link) 를 선택합니다.

  6. 라이브 링크 프리셋을 디폴트 라이브 링크 프리셋(Default Live Link Preset) 에 추가하여 프로젝트를 실행하면 프리셋이 자동으로 적용되도록 합니다.

    Mobu 라이브 링크 프리셋으로 변경된 라이브 링크 플러그인 프리셋

  7. 월드 아웃라이너(World Outliner) 에서 내부 프러스텀 카메라(InnerFrustumCamera) 를 선택합니다.

  8. 디테일(Details) 패널의 컴포넌트(Components) 섹션에서 라이브 링크 컴포넌트 컨트롤러(LiveLinkComponentController) 를 선택합니다.

  9. 라이브 링크(Live Link) 섹션에서 서브젝트 표현(Subject Representation) 필드를 라이브 링크 소스로 변경합니다.

    내부 프러스텀 카메라의 라이브 링크 컴포넌트 컨트롤러에서 변경된 서브젝트 표현 필드의 스크린샷

  10. 프로젝트를 저장합니다.

  11. nDisplay 런처에서 커스텀 명령줄 인수에 -messaging 을 추가합니다.

  12. nDisplay를 실행합니다.

  13. 이제 내부 카메라 프러스텀이 라이브 링크 소스로 트래킹됩니다.

7단계 - 그린 스크린과 크로마 키

LED 패널에서 내부 프러스텀에 표시되는 것을 가상 세계에서 크로마 키 마커가 있는 그린 스크린으로 바꿀 수 있습니다.

엔진에서 토글된 그린 스크린의 스크린샷

그린 스크린을 보이게 하고 크로마 키 마커를 수정하려면 다음 단계를 따르세요.

  1. 월드 아웃라이너(World Outliner) 에서 그린 스크린 평면(GreenScreenPlane) 을 선택합니다.

  2. 디테일(Details) 패널의 렌더링(Rendering) 섹션에서 비저블(Visible) 필드를 활성화합니다.

  3. 월드 아웃라이너(World Outliner)에서 BP_IncameraStageSettings 를 선택합니다.

  4. 디테일(Details) 패널의 크로마키(Chromakey) 섹션에는 에지 블러와 크로마 키 마커를 수정하는 옵션이 있습니다.

8단계 - 색 보정 볼륨

색 보정 볼륨(Color Correction Volume) 을 사용하면 씬 내 환경과 오브젝트의 색을 조정 및 교정할 수 있습니다. 색 보정 볼륨을 조정하면 현실의 세트와 LED 벽에 디스플레이된 환경의 라이팅 및 섀도를 일치시킬 수 있습니다.

환경에 분홍색을 추가 중인 색 보정 볼륨의 스크린샷

샘플 프로젝트에서는 환경 색을 조정하기 위해 색 보정 볼륨을 사용하여 분홍색을 추가했습니다.

색 보정 볼륨을 씬에 추가하려면 다음 단계를 수행하세요.

  1. 에디터의 콘텐츠 브라우저(Contents Browser) 에서 뷰 옵션(View Options) 패널을 열고, 엔진 콘텐츠 표시(Show Engine Content)플러그인 콘텐츠 표시(Show Plugin Content) 를 활성화합니다.

  2. 콘텐츠(Content) 옆의 폴더 아이콘을 선택합니다. 목록에서 버추얼 프로덕션 유틸리티 콘텐츠(VirtualProductionUtilities Content) 를 펼쳐서 CCV 를 선택합니다.

  3. BP_ColorCorrectVolume 블루프린트를 씬에 추가합니다.

  4. 월드 아웃라이너(World Outliner) 에서 BP_ColorCorrectVolume 을 선택합니다.

  5. 디테일(Details) 패널의 디폴트(Default) 섹션에서 색 보정(Color Correct) 파라미터를 펼칩니다.

  6. 글로벌(Global) 파라미터를 펼쳐서 감마(Gamma) 색을 수정하여 볼륨의 색을 변경합니다.

9단계 - 직접 해보세요

본 가이드는 LED 스크린에서 디스플레이를 세팅하고, 다수의 컴퓨터에서 프로젝트를 실행하고, 프로젝트에 카메라 트래킹을 통합하는 방법을 다뤘습니다.

멀티 디스플레이를 구성하려면 소프트웨어와 하드웨어를 모두 동기화해야 합니다. 생성된 콘텐츠가 동일한 시뮬레이션 타이밍 정보를 사용하는 모든 PC에서 동시에 준비되어야 할 뿐 아니라, 적절한 시점에 디스플레이 스왑(그래픽카드 버퍼에서 현재 이미지를 다음 이미지로 변경하는 것)도 이루어져야 디스플레이에서 테어링 현상이 일어나지 않습니다. 머신에 디스플레이 동기화 및 젠록을 구성하여 여러 디스플레이에서 끊김없는 뷰를 생성하는 방법은 nDisplay에서 동기화하기를 참조하세요.

디스플레이 동기화 외에도 엔진의 타임코드와 프레임 생성이 카메라의 입력과 일치해야 합니다. 타임코드와 젠록을 모든 기기에서 엔진과 동기화하는 방법은 타임코드 및 젠록을 참조하세요.

촬영 중에 씬과 디스플레이를 제어하기 위해 인카메라 VFX에서 시도할 수 있는 다양한 방법이 있습니다.

언리얼 엔진 문서의 미래를 함께 만들어주세요! 더 나은 서비스를 제공할 수 있도록 문서 사용에 대한 피드백을 주세요.
설문조사에 참여해 주세요
건너뛰기