[유니티 Unity] RenderTexture를 이용해서 UI에 영상 출력하기

 

1. Raw Image 생성하기

 

하이어라키 창안에 영상을 보여줄 UI - RawImage를 생성한다.

 

 

2. Render Texture 생성하기

 

 

랜더 텍스쳐를 생성하는 방법은 Assets프로젝트 파일에서 오른쪽 마우스를 클릭하면 Create - Render Texture를 선택하여 생성 할 수 있다. 

 

랜더 텍스쳐는 런타임 시점에서 생성되고 업데이트 되는 특수한 타입의 텍스처이다.

렌더 텍스처를 사용하기 위해서는 카메라를 하나 지정해서 렌더링 해주어야한다. 

 

 

Render Texture안에 Size를 조절하여 영상을 원하는 사이즈로 바꾸어준다

기본 사이즈는 256*256으로 되어있음

 

3. Render Texture를 Raw Image적용하기 

 

 

그리고 영상을 보줄 UI-Raw Imge안에 RenderTexture 를 넣어준다

 

4. VideoPlayer로 영상 재생하기 

 

이제 영상을 재생하기 위해서

빈 오브젝트를 하나 생성해주고 빈 오브젝트 안에

Video Player 컴포넌트를  넣어준다

 

 

 

그리고 Video Clip안에는 재생할 영상을 넣어주고

Target Texture안에는 아까 만들어준 Render Texture를 넣어주고

재생하면 영상이 재생되는 것을 확인 할 수 있다

 


 

[Video Player 스크립트 함수]

 

 

 

Video Player 를 사용하기 위해서는
using UnityEngine.Video;
을 작성해주어야 사용이 가능하다


Play() : 동영상을 재생하는데 사용하는 함수


Pause() : 영상 일시정지


Stop() : 영상 완전 정지

Render Texture가 처음 시작 부분으로 바뀌는 것을 확인 할 수 있음

video.time : 현재 재생중인 영상의 현재 플레이 시간

video.cilp.length : 현재 영상의 전체 길이

video.frameRate : 현재 영상의 프레임 속도

isPlaying :  현재 영상의 재생 유무(Ture,False)

isPrepared : 영상 재생 준비 상태를 확인

isLooping : 영상 반복되었는지 아닌지 확인