Bink 미디어(Bink Media) 플러그인은 언리얼 엔진 5에 내장되어 있으며, NDA 플랫폼을 포함하여 모든 언리얼 플랫폼을 지원합니다.
설치
- 에디터에서 편집(Edit) > 플러그인(Plugins) 을 선택하고 Bink 를 찾아 플러그인을 활성화합니다. 필요한 경우 언리얼 엔진을 재시작합니다.
이미지를 클릭하면 확대됩니다.
-
Bink 비디오 파일을 언리얼 엔진 프로젝트 디렉터리의 Contents/Movies 디렉터리에 복사합니다.
Engine/Binaries/ThirdParty/Bink
디렉터리에 있는 언리얼용 Bink 2 인코더(Bink 2 Encoder for Unreal)(Bink2ForUnreal.exe)를 사용하여 Bink 파일을 생성합니다. 실행 파일을 더블클릭하고 변환할 비디오 파일을 선택한 후 Bink it 을 클릭합니다. 그런 다음 Bink 를 클릭합니다. 대부분의 사용 사례에서 자동 세팅이 원활하게 작동합니다. -
프로젝트의
.uproject
파일을 더블클릭하면 플러그인이 없으므로 프로젝트를 리빌드할 것인지 묻는 경고 대화창이 나타납니다. 리빌드를 실행하도록 선택하면 프로젝트가 로드되면서 언리얼 엔진이 재시작됩니다. - 이제 Content/Movies 디렉터리에서 Bink 파일을 재생할 수 있습니다.
언리얼 엔진 무비 타입용 Bink
언리얼 엔진의 무비 타입은 전체화면 스타트업 무비, 게임 내 비스타트업 무비 2가지로 나뉩니다. 각 타입의 사용 방법은 아래에 설명된 바와 같이 서로 조금씩 다릅니다.
전체화면 스타트업 무비 구성
먼저, 다른 무비 플레이어 플러그인을 모두 비활성화해야 합니다. 그러지 않으면 활성화된 MPEG-4 플레이어가 Bink 무비 파일 재생을 시도했다가 아무 반응 없이 실패합니다.
이를 실행하려면 편집 > 플러그인 으로 이동합니다.
이미지를 클릭하면 확대됩니다.
Bink 미디어 플러그인 이외의 무비 플레이어 플러그인을 모두 비활성화합니다.
두 번째로, 일부 무비를 스타트업 시 재생되도록 환경설정해야 합니다.
편집 > 프로젝트 세팅(Project Settings) 으로 이동합니다.
이미지를 클릭하면 확대됩니다.
스타트업 무비(Startup Movies) 옆에 있는 + 버튼을 클릭하고 목록을 펼쳐 무비를 확인합니다. 여러 개의 무비를 순서대로 재생할 수 있습니다. 그런 다음 … 버튼을 클릭하여 재생할 파일을 선택합니다.
편집 > 프로젝트 세팅 > Bink 무비(Bink Movies) 로 이동하여 Bink 전용 옵션을 확인합니다.
이미지를 클릭하면 확대됩니다.
Bink 전용 옵션은 다음과 같이 몇 가지가 있습니다.
-
Bink 버퍼 모드(Bink Buffer Mode): 무비 일부를 디스크에서 스트리밍할지 여부, 재생 전에 무비 전체를 미리 로드할지 여부 또는 무비 전체가 준비될 때까지 스트리밍을 시작하지 않을지 여부를 제어합니다.
-
Bink 사운드 트랙(Bink Sound Track): 사운드 재생 방식을 결정합니다. 이러한 방식에는 다음과 같이 몇 가지 옵션이 있습니다.
-
SndNone: 이 Bink에서 어떤 사운드도 재생하지 않습니다.
-
사운드 단순(Snd Simple): 디폴트입니다. 이 옵션에서는 Bink 파일의 파일 이름을 기반으로 사용자가 수행하려는 작업을 확인하려고 시도합니다.
-
파일 이름이
_51
로 끝나면 사운드 51(Snd 51) 옵션을 사용합니다. -
파일 이름이
_51L
로 끝나면 사운드 51 언어 오버라이드(Snd 51 Language Override) 옵션을 사용합니다. -
파일 이름이
_71
로 끝나면 사운드 71(Snd 71) 옵션을 사용합니다. -
파일 이름이
_71L
로 끝나면 사운드 71 언어 오버라이드(Snd 71 Language Override) 옵션을 사용합니다.
그렇지 않은 경우에는 사운드 트랙 시작(Sound Track Start) 값(기본적으로 트랙 0)으로 지정된 Bink 트랙이 재생됩니다.
-
-
사운드 언어 오버라이드(Snd Language Override): 2개 트랙을 재생합니다.
-
트랙 0의 오디오는 일반적으로 배경 음악/이펙트입니다.
-
사운드 트랙 시작 값으로 지정된 트랙은 일반적으로 언어 트랙입니다.
-
-
사운드 51: 사운드 트랙 오프셋(Sound Track Offset) 값(기본적으로 트랙 0)으로 지정된 트랙에서부터 시스템으로 모노 트랙 6개를 재생합니다. 따라서 5.1 트랙을 4개 언어로 완전히 현지화했다면 Bink 트랙 24개로 믹스한 다음 사운드 트랙 오프셋 세팅을 사용하여 재생할 오디오 트랙의 올바른 범위를 지정합니다.
-
사운드 51 언어 오버라이드: 오프셋 0에서부터 모노 백그라운드/이펙트 트랙 6개를 재생한 후 사운드 트랙 시작 값으로 지정된 모노 트랙 1개(언어 트랙)를 센터 채널로 재생합니다. 따라서 여기에 있는 4개 언어는 오디오 트랙 10개, 5.1 배경 음악/이펙트 트랙, 센터 언어 트랙 4개를 갖게 됩니다.
-
사운드 71: 사운드 트랙 오프셋 값(기본적으로 0)으로 지정된 트랙에서부터 시스템으로 모노 트랙 8개를 재생합니다. 따라서 7.1 트랙을 4개 언어로 완전히 현지화했다면 Bink 트랙 28개로 믹스한 다음 사운드 트랙 오프셋 세팅을 사용하여 재생할 오디오 트랙의 올바른 범위를 지정합니다.
-
Snd 71 언어 오버라이드: 오프셋 0에서부터 모노 백그라운드/이펙트 트랙 8개를 재생한 후 사운드 트랙 시작 값으로 지정된 모노 트랙 1개(언어 트랙)를 센터 채널로 재생합니다. 따라서 여기에 있는 4개 언어는 오디오 트랙 12개, 7.1 배경 음악/이펙트 트랙, 센터 언어 트랙 4개를 갖게 됩니다.
-
-
Bink 사운드 트랙 시작(Bink Sound Track Start): Bink 무비 하나에는 여러 개의 사운드 트랙이 포함될 수 있습니다. 이 옵션을 사용하면 어떤 사운드 트랙을 재생할지 지정할 수 있습니다.
-
Bink 대상 좌측 상단/우측 하단(Bink Destination Upper Left / Lower Right): 무비를 렌더링할 대상을 직사각형으로 지정합니다. 이 옵션을 사용하면 예를 들어 레터박스를 강제로 실행할 수 있습니다.
게임 내(비스타트업) 무비 설정
게임 레벨 자체가 진행되는 동안에도 무비를 렌더링할 수 있습니다. 텍스처로 직접 렌더링한 후 게임 내에서 해당 텍스처를 사용하거나, 화면으로 직접 렌더링할 수 있습니다. Bink는 모든 그래픽 이후부터 UI 이전까지 렌더링을 수행하므로 무비 맨 위에 자막을 드로할 수 있습니다.
이를 실행하려면 콘텐츠 브라우저 에서 우클릭하고 기타(Miscellaneous) 섹션에서 새 Bink 미디어 플레이어(Bink Media Player) 를 추가합니다.

이미지를 클릭하면 확대됩니다.
Bink 전용 환경설정 옵션은 다음과 같습니다.
-
Bink 버퍼 모드: 무비 일부를 디스크에서 스트리밍할지 여부, 재생 전에 무비 전체를 미리 로드할지 여부 또는 무비 전체가 준비될 때까지 스트리밍을 중지하지 않을지 여부를 제어합니다.
-
Bink 사운드 트랙: 사운드 재생 방식을 결정합니다. 단순 스테레오를 7.1 서라운드 사운드로 변환하는 옵션은 여러 가지가 있습니다.
-
Bink 사운드 트랙 시작: Bink 무비 하나에는 여러 개의 사운드 트랙이 포함될 수 있습니다. 이 옵션을 사용하면 어떤 사운드 트랙을 재생할지 지정할 수 있습니다.
-
Bink 드로 스타일(Bink Draw Style): 이 옵션을 사용하면 UE5의 디폴트 렌더링 기능을 텍스처로 오버라이드하고, UE4 렌더링을 우회하는 대신 화면으로 직접 렌더링할 수 있습니다.
-
Bink 대상 좌측 상단/우측 하단: 무비를 렌더링할 대상을 직사각형으로 지정합니다. 이 옵션을 사용하면 예를 들어 레터박스를 강제로 실행할 수 있습니다.
-
Bink 레이어 뎁스(Bink Layer Depth): 여러 비디오를 동시에 렌더링하고 비디오를 드로할 순서를 제어하기 위한 뎁스를 설정할 수 있습니다.
Bink 무비 파일(*.bk2
)은 프로젝트 이름이 (ProjectName)인 (ProjectName)/Content/Movies 폴더에 있어야 합니다. 이렇게 하면 파일이 모든 환경설정에서 최종 빌드까지 올바르게 복사됩니다.
콘텐츠 브라우저 에서 Bink 미디어 플레이어 를 우클릭하고 미디어 텍스처 생성(Create Media Texture) 을 선택하여 플레이어에서 텍스처를 생성합니다. 그런 다음 콘텐츠 브라우저 에서 BinkMediaPlayer_Tex
텍스처를 우클릭하고 머티리얼 생성(Create Material) 을 선택하면 이 텍스처로 디폴트 머티리얼을 생성할 수 있습니다. 언리얼 엔진에서 다른 머티리얼이나 텍스처를 사용할 때처럼 이 머티리얼 및 텍스처를 사용할 수 있습니다.
기타 언리얼용 Bink 참고 사항
멀티스레드 디코딩
언리얼 엔진용 Bink 미디어 플러그인은 기본적으로 멀티스레드 디코딩을 지원합니다. 압축 해제가 이뤄지는 동안 런타임 CPU 수에 따라 스레드를 최대 4개까지 사용합니다.
언리얼 엔진용 Bink 2 인코더는 기본적으로 비디오 슬라이스 4개를 사용하여 최상의 멀티스레드 퍼포먼스를 구현합니다.
탐색
Bink 플러그인의 기능인 BinkPluginGoto
를 직접 호출하여 새로운 재생 위치를 설정할 수 있습니다. 보통은 키 프레임으로 건너뛰거나, 그 과정에서 모든 중간 프레임의 압축을 해제해야 합니다. Bink 플러그인이 백그라운드에서 이 작업을 수행합니다. 사용자는 Bink가 ms_per_process
파라미터를 사용하여 새로운 프레임을 탐색하기 위해 각 프레임에서 소모하는 CPU 양을 제어할 수 있습니다. 보통 프레임당 30ms 정도를 사용하면 비교적 신속하게 탐색할 수 있습니다.
비디오 뎁스(드로 도중 정렬하기)
비스타트업 무비 옵션이 포함된 다수의 무비 오버레이를 드로할 경우 뎁스(Depth) 옵션을 사용하여 드로할 순서를 제어할 수 있습니다. 이렇게 하면 언리얼 엔진이 비디오를 처리하는 순서에 관계없이 비디오가 올바르게 스태킹될 수 있습니다.
렌더 타깃의 경우 뎁스(Depth) 가 비디오를 렌더 타깃으로 드로할 순서를 제어하지만, 렌더 타깃은 일반적으로 언리얼 엔진에 의해 씬으로 드로됩니다.
자막
자막은 Subrip .srt 파일 포맷으로 지원됩니다.
srt 파일을 사용하려면 해당 파일을 동일한 디렉터리에 Bink 2 Video bk2 파일로 포함시킵니다. <name of Bink2 video file>_<language>.srt
포맷을 사용하여 파일을 명명합니다. 이 파일에는 지정된 언어의 자막이 포함되어야 합니다.
예를 들어 'Movies/example.bk2' 파일이 있는 경우, 영어 자막이 포함된 해당 파일과 함께 'Movies/example_en.srt' 파일을 추가로 가질 수 있습니다.
스테레오 비디오
Bink는 3D 비디오에 사용할 수 있을 만큼 빠릅니다. 이를 실행하려면 렌더 타깃 경로를 이용하여 화면 정렬 쿼드로 드로합니다. 각 눈에 해당하는 쿼드를 조정하여 화면을 쿼드의 위쪽 절반 또는 비디오의 아래쪽 절반으로 채웁니다.
Bink 플러그인 API
Bink 플러그인 API에 대한 컨트롤은 이 외에도 여러 가지가 있습니다. 커스텀 컨트롤이 필요한 경우 탐색 및 일시정지 등을 포함하는 binkplugin.h
의 어떤 기능도 호출할 수 있습니다.