무비 텍스쳐 (Movie Texture)

_주의:_ 이것은 _Pro/고급버전_ 만 지원하는 기능입니다.

Desktop!

무비 텍스쳐 Movie Textures 는 비디오 파일로부터 만들어진 동영상화된 텍스쳐 Textures입니다. 비디오 파일을 사용자 프로젝트의 에셋 폴더 Assets Folder에 위치시킴으로써 사용자는 일반 Texture를 사용하듯이 똑같은 방법의 사용을 위해 비디오를 불러오기 import 할 수 있습니다.

비디오 파일은 애플 퀵타임 QuickTime 을 통하여 들여옵니다. 지원되는 파일 종류들은 퀵타임 설치로 재생할 수 있는 파일 타입과 같습니다. (일반적으로 _.mov_, _.mpg_, _.mpeg_, _.mp4_, _.avi_, _.asf_). 윈도우에서는 무비 불러오기를 실행하려면 Quicktime 설치가 필수입니다. (download here).

속성

무비 텍스쳐 인스펙터 Inspector 는 일반 텍스쳐 인스펙터와 매우 유사합니다.


유니티에서 비디오 파일은 무비 텍스쳐입니다

Aniso Level 텍스쳐를 가파른 각도에서 볼 때 텍스쳐 품질을 향상시킵니다. 바닥 및 지면 텍스쳐에 적합합니다.
Filtering Mode 3D 변형(transformation)에 의해 확장할 때 해당 텍스쳐가 어떻게 필터링 되는가를 선택할 수 있습니다.
Loop 이 속성이 켜지면, 무비가 재생을 종료하면 룹 Loop 으로 반복재생 합니다.
Quality Ogg Theora 비디오 파일의 압축. 높은 값은 높은 품질을 의미하나 파일 사이즈도 더욱 커집니다.

상세사항 Details

비디오 파일이 사용자 프로젝트에 추가될 때, 해당 비디오는 자동적으로 불려온 후 Ogg Theora 포맷으로 변환됩니다. 일단 사용자의 무비 텍스쳐가 불려오고 나면, 사용자는 일반 텍스쳐와 마찬가지로 그것을 게임 오브젝트 GameObject재질 Material에 부착할 수 있습니다.

무비의 재생 Playing the Movie

사용자의 무비 텍스쳐는 게임 시작 시 자동적으로 재생되는 것은 아닙니다. 사용자는 짧은 스크립트를 사용하여 언제 재생할 지를 알려주어야 합니다.

// this line of code will make the Movie Texture begin playing
renderer.material.mainTexture.Play();

스페이스 바를 눌러 무비 재생을 껐다 켰다 하는 토글 toggle 기능을 추가하려면 다음 스크립트를 첨부하세요:

function Update () {
	if (Input.GetButtonDown ("Jump")) {
		if (renderer.material.mainTexture.isPlaying) {
			renderer.material.mainTexture.Pause();
		}
		else {
			renderer.material.mainTexture.Play();
		}
	}
}

무비 텍스쳐 재생하기에 대하여 더 알아보시고 싶다면 Movie Texture Script Reference (ScriptRef:MovieTexture.html) 페이지를 참조하세요.

무비 오디오 Movie Audio

무비 텍스쳐가 불려올(import) 때, 영상을 동반하는 오디오 트랙도 같이 불러와 집니다. 이 오디오는 무비 텍스쳐의 오디오 클립 AudioClip 자식 child 으로 나타납니다.


이 비디오의 오디오 트랙은 해당 프로젝트 뷰 Project View 내 무비 텍스쳐의 자식 child 으로 나타납니다

이 오디오를 재생하려면, 오디오 클립이 다른 여타의 오디오 클립처럼 게임 오브젝트에 부착 attach 되어야 합니다. 프로젝트 뷰에서 오디오 클립을 드래그하여 씬 scene 이나 계층 Hierarchy 뷰 안의 아무 게임오브젝트 위에 놓으면 됩니다. 일반적으로, 이것은 무비를 보여주는 게임오브젝트와 동일합니다. 그리고는 audio.Play() (ScriptRef: GameObject-audio.html) 를 사용하여 해당 무비의 오디오 트랙이 비디오와 나란히 재생될 수 있도록 해 줍니다.

iOS!

무비 텍스쳐는 iOS 에서는 지원되지 않습니다. 대신 풀스크린 스트리밍 재생 playback 이 iPhoneUtils.PlayMovie와 iPhoneUtils.PlayMovieURL (ScriptRef:iPhoneUtils.PlayMovie.html)을 통하여 제공됩니다.

사용자는 비디오 파일을 일반 에셋처럼 불러오기 할 수 있고 아니면 다른 방법으로 원격 서버에 있는 무비를 재생하기 위하여 네트워크 기반의 URL을 지정할 수도 있습니다.

사용자는 사용자의 Project 디렉토리에 위치한 //StreamingAssets// 폴더 내에 사용자 비디오를 보관할 필요가 있습니다.

유니티 iOS는 iPod 이나 iPhone에서 이미 정상 재생되는 무비라면 모두 지원하며, 이는 일반적으로 _.mov_, _.mp4_, _.mpv_, _.3gp_ 확장자를 가지는 파일이며 다음 압축 표준을 사용하는 파일을 의미합니다:

  • H.264 Baseline Profile Level 3.0 video
  • MPEG-4 Part 2 video

지원하는 압축 표준에 대하여 추가 정보를 알고 싶으시면, iPhone SDK MPMoviePlayerController Class Reference를 참고하세요.

iPhoneUtils.PlayMovie (ScriptRef:iPhoneUtils.PlayMovie.html) 혹은 iPhoneUtils.PlayMovieURL (ScriptRef:iPhoneUtils.PlayMovie.html) 을 호출 하자마자, 해당 스크린은 현재 콘텐츠에서 지정된 배경 background 색깔로 페이드 (fade) 하며 사라질 것입니다. 무비의 재생을 준비하는 데는 얼마간의 시간이 소요될 수 있으며, 그 동안 플레이어 player 는 계속해서 배경 색깔을 디스플레이 하거나 진행 표시바 (progress indicator) 를 보여주어 해당 무비가 로딩 중이라는 것을 사용자에게 알려줍니다. 재생이 끝나면, 스크린 화면이 사용자의 콘텐츠로 다시 바뀔 것입니다.

비디오 플레이어는 비디오 재생 중 음소거로 전환하는 것을 허용하지 않습니다

위에서 적힌 대로, 애플의 내장 embedded 플레이어(현재 3.2 와 iPhone OS 3.1.2 와 이전버젼)를 사용하여 비디오 파일이 재생 되므로, 이것에 대해서 취할 수 있는 조치가 없으며 이것은 애플 소프트웨어의 버그입니다. 그러므로 여 경우 음소거는 가능하지 않습니다.

비디오 플레이어는 기기의 기울임 orientation 을 허용하지 않습니다

애플 비디오 플레이어와 iPhone SDK는 비디오의 기울기 방향을 조정하는 방법을 제공하지 않습니다. 이에 대해일반적인 대안은 가로모드와 세로모드 용으로 두 개의 무비를 직접 만든 후, 재생 전에 기기의 방향 orientation 을 확인하여 둘 중 하나의 무비모드를 선택합니다.

Android!

< 무비 텍스쳐는 안드로이드에서는 지원되지 않습니다. 대신 iPhoneUtils.PlayMovie (ScriptRef:iPhoneUtils.PlayMovie.html) 와 iPhoneUtils.PlayMovieURL (ScriptRef:iPhoneUtils.PlayMovie.html) 을 사용한 풀스크린 스트리밍 재생이 제공됩니다.

사용자는 비디오 파일을 일반 에셋처럼 불러오기 할 수 있고 아니면 다른 방법으로 원격 서버에 있는 무비를 재생하기 위하여 네트워크 기반의 URL을 지정할 수도 있습니다.

사용자는 사용자의 Project 디렉토리에 위치한 //StreamingAssets// 폴더 내에 사용자 비디오를 보관할 필요가 있습니다.

유니티 안드로이드는 안드로이드 플랫폼에서 지원하는 모든 무비를 지원하며, 일반적으로 이것은 _.mp4_나_.3gp_ 확장자와 다음 압축 표준 중 하나를 사용한다는 것을 의미합니다:

  • H.263
  • H.264 AVC
  • MPEG-4 SP

어쨌거나 기기 판매자들은 지원 포맷 리스트를 확장하는 데 민감하므로, 일부 안드로이드 기기는 HD 비디오나 리스트 된 파일 포맷 이외의 포맷도 지원할 수 있습니다.

지원하는 압축 표준에 대하여 더 자세한 정보를 알고 싶으시다면, Android SDK Core Media Formats documentation을 참조하세요.

사용자가 iPhoneUtils.PlayMovie 혹은 iPhoneUtils.PlayMovieURL 을 호출 하자 마자, 해당 스크린은 현재 콘텐츠에서 지정된 배경 색깔로 사라질 것 입니다. 무비를 재생하기 위하여 준비하는 데에는 얼마간의 시간이 소요되며, 그 동안 플레이어는 계속해서 배경 색깔을 디스플레이 하거나 진행 상태바 progress indicator 를 보여주어 해당 무비가 로딩 중이라는 것을 사용자에게 알려줍니다. 재생이 끝나면, 스크린은 사용자의 콘텐츠로 다시 복귀하게 됩니다.

역링크