DXWave/Project2

팀교육0121 DMX Pixel Mapping with DMX

UNREAL 2025. 1. 15. 17:39

DMX연동을 위해서는 별도의 멀티유저세션 PC를 운영하길 권장한다. 아래 세팅을 하고 주소를 DMX전용 주소로 해서 분배야한다.

https://www.youtube.com/watch?v=O3zd4QoLXOs

DMX관련 플러그인을 깔아야 한다.

DMX를 사용하기 위해서는 Plugins의 DMX 세팅을 해야한다. 처음에는 체크를 위해 마스터PC IP를 설정하지만 배포하기 위해서는 DMX를 컨트롤할  PC의 IP로 설정해주자

Nanite조명은 맨밑 Protocol Universe Remap을 체크해야한다. 장비와 맞춘다 장비에 따라 0, 1일수도 있다. 

Output도 설정해야한다.

기본 기능에 없는건 Fixture Settings에서 추가해야하는데 39번까지는 기존 기능이 있는것 같아 40번부터 넣는다고 한다. 

+를 누르면 아래 추가된다.

Pixel Mapping Sky Panels with DMX in Unreal 4.27

DMX 관련 파일을 3개를 만들어야 한다.

DMX Library는 DMX에 연결한 기기를 추가한다.

일단 라이브러리 세팅은 다음과 같다.

DMX링크에 연결될 장비들의 개별 세팅을 Fixture Types에서 해야한다.

우선 라이브러리 세팅을 해야한다.

라이브러리세팅 이건 우클릭해서 만들면 기본으로 설정되는것 같다.

다음 FixtureType을 만들자. 장비마다 기능의 맵핑이 다르니 매뉴얼을 참조해야하고 8bit 16bit해상도를 설정해야한다.

맨오른쪽 기능은 라이트의 스펙에 있는걸 다 넣어야 하고 8bit/16bit에 맞게 넣어야 한다. Function Settings에 8/16bit 맞춰야한다. 기기에서도 맞추는 메뉴가 있다.

CCT, G/M과 같은 경우 팝업 메뉴에서 보이지 않는다면 프로젝트 세팅에서 추가해야 한다.

금방 반영안되면 저장해야한다.

 

Fixture Patch도 설정하자. 이건 하나의 DMX링크에 여러대의 기기를 사용할경우 패킷을 맵핑하는거다. 매핑의 시작번호는 기기의 CH에서 설정할수 있다.

첫번째 장비는 12번 부터 시작한다 그럼면 장비 세팅에서 CH을 12에 마쳐준다

2번째 장비

두번째 장비는 1번 부터 시작한다 그럼면 장비 세팅에서 CH을 1에 마쳐준다

3번째장비는 23부터 시작하니 장비세팅을 CH을 23번에 맞춘다.

DMX Fixture

맨먼저 

텍스처가 언리얼로 되어 있는데 이걸

픽스처 그룹추가후, DMX Library 선택

렌더타겟을 만든다 이건 위에서 사용될 텍스쳐이다. 해상도 지정

액터배치에서 씬캡쳐 2D를 만들자. 이건 기본적으로 카메라다. 씬을 찍어준다.

디테일에서 렌더타겟을 지정하고 그럼 씬캡쳐2D가 캡쳐한 텍스처를 렌더타겟에 저장한다.

이걸 DMXPixelMapping의 InputTexture에 연결해준다.

 

DMX플레이를 클릭하면 연결된다.

 

조명을 샘플링하기 위해 씬캡쳐2D앞에 플렌을 설치하고 정이재밀 머터리얼을 지정해준다.

머터리얼을 만들었으면 플랜에 적용시키고 조명값을 측정할 위치에 배치하자 이번 실습에서는 화면은 오른쪽에 있어서 다음과 같이 했다.

PixelMapping을 사용하기 위해서는 PixelMapping 파일을 열고 DMX플레이를 해줘야하는데

자동화를 위해서는 다음과 같이 블루프린트를 만들고 SendDMX노드를 추가한다. 

다음은 레벨스냅샷을 만들고 운영해봤다. 이건 멀티유저세션에서 안된다. 이걸 사용하기 위해서는 미리 만들어서 배포해야한다. 멀티유저 세션은 말그대로 다 만들어진 레벨의 위치정도나 파라미터정도를 변경하는 정도이다.

레벨스냅샷을 만들기 위해 창을 열고, 레벨의 조명이나 에셋의 위치를 조정한뒤 +스탭샷찍기로 저장하면된다.

로드하기 위해서는 레벨스탭샷 아이콘을 더블클릭한후 오른쪽 레벨 스탭샷복원을 클릭해야 한다.

레벨 스냅샷은 이 창에서는 지울수 없다. 지우가 위해서는 아이콘 우클릭후 에셋탐색을 선택하면 폴더가 보이고 이걸 지워야 한다. 레벨 스탭샷은 이렇게 하나의 에셋으로 생성되기 때문에 미리 안만들면 멀티유저세션에서 사용할수 없는것 같다.