2020
05.25

 

 

유니티 내장 VideoPlayer는 평소에는 playOnAwake를 체크해서 사용하는데,

playOnAwake 체크를 풀고 Start에서 play()로 바로 실행 해보았다.

 

?? 실행이 안됨.

 

아래와 같은 형태로 코드를 작성하니 정상 작동 가능.

    [SerializeField] VideoPlayer videoPlayer;

    IEnumerator Start()
    {
        videoPlayer.loopPointReached += OnEndMovie;
        videoPlayer.Prepare();
        yield return new WaitUntil(() => videoPlayer.isPrepared == true);
        videoPlayer.Play();
    }

    void OnEndMovie(VideoPlayer vp)
    {
        SceneManager.LoadScene("Start");
    }

 

VideoPlayer는 비디오가 준비되지않았을 경우 Play()가 씹히는 현상이 있는듯.

Play On Awake 에는 prepare를 포함해서 실행하도록 되어있는 듯 하다.

 

COMMENT