У меня есть несколько видео в Unity Pro, которые я могу воспроизвести через объект и MovieTexture. Через инспектора я вручную установил MovieTexture в качестве одного из видео .ogg, которое у меня есть, и оно успешно воспроизводится.Как изменить текстуры фильмов во время выполнения в Unity Pro?
Что я хочу сделать, это изменить Текстуру фильма во время выполнения, через код, когда выполняются определенные условия (для простоты, что-то вроде, когда вы нажимаете пробел, воспроизводимое в данный момент видео изменяется на другое видео) ,
Что в настоящее время работает для меня, но с помощью инспектора это:
MovieTexture movTex;
AudioSource movAudio;
void Start()
{
// I have set the movie manually through the inspector by drag and drop
// onto the texture component
movTex = (MovieTexture)GetComponent<Renderer>().material.mainTexture;
movAudio = GetComponent<AudioSource>();
movAudio.clip = movTex.audioClip;
movTex.Play(); // Autoplay on start
movAudio.Play();
movTex.loop = true; // Loop forever
...
}
И я уже попробовал код, который я нашел на this post, положив конечно мое желаемое видео в папке ресурсов, но не работает. Я получаю обычную белую текстуру без звука.
Это код я пытаюсь сделать, чтобы работать, но я не могу:
MovieTexture movTex;
AudioSource movAudio;
void Start()
{
movTex = (MovieTexture) Resources.Load("V00001" , typeof(MovieTexture));
transform.renderer.material.mainTexture = movie;
transform.audio.clip = movie.audioClip;
movAudio = GetComponent<AudioSource>();
movAudio.clip = movTex.audioClip;
movTex.Play(); // Autoplay on start
movAudio.Play();
movTex.loop = true; // Loop forever
...
}
void Update()
{
if("Spacebar is pressed"){
movTex = (MovieTexture) Resources.Load("V00001" , typeof(MovieTexture));
movAudio = GetComponent<AudioSource>();
movAudio.clip = movTex.audioClip;
movTex.Play(); // Autoplay on start
movAudio.Play();
movTex.loop = true; // Loop forever
}
...
}
Что я делаю неправильно?
Итак, в чем проблема? В вашем вопросе не упоминается никаких проблем. Во-первых, вы сказали, что это работает, тогда это не так. – Programmer