Вот почему я предоставил два способа сделать это так, чтобы в случае неудачи сработал другой. Я думаю, вы должны подать отчет об ошибке, потому что ваш оригинальный код должен работать. Теперь, кажется, работает в моей версии Unity 5.6.
я есть класс MovieController, который управляет видео в моем проекте. Я использую новый компонент видеоплеера, представленный в Unity 5.6.
Я хотел бы вызвать метод, когда фильм закончится. Пока этот метод толькоDebug.Log
, как вы видете:
using UnityEngine;
using UnityEngine.Video;
public class MovieController : MonoBehaviour
{
private VideoPlayer m_VideoPlayer;
void Awake ()
{
m_VideoPlayer = GetComponent<VideoPlayer>();
m_VideoPlayer.loopPointReached += OnMovieFinished; // loopPointReached is the event for the end of the video
}
void OnMovieFinished(VideoPlayer player)
{
Debug.Log("Event for movie end called");
player.Stop();
}
}
Моя проблема в том, чтоOnMovieFinished
не вызывается в конце видео, и я просто получаю черный экран и ничего в консоли.