您的位置:首页 > 其它

AR 广告大屏视频播放模块

2017-07-27 17:45 232 查看
1.将视频文件拖动到assets文件夹下



2.分别创建两个脚本,UI_Manager用于管理脚本,V_Sc用于播放和停止播放视频

UI_Manager的代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class UI_Manager : MonoBehaviour {

void Start () {

}

void Update () {

}

//奇幻旅程按钮
public void Bt_M_V_Q()
{
//开始播放视频,调用UI_Manager所依附的物体上的V_Sc脚本中的StartVideo函数
gameObject.GetComponent<V_Sc>().StartVideo();
}

//拍照按钮
public void Bt_M_A_P()
{
//停止播放视频,调用UI_Manager所依附的物体上的V_Sc脚本中的StopVideo函数
gameObject.GetComponent<V_Sc>().StopVideo();
}
}
V_Sc的代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class V_Sc : MonoBehaviour {

public RawImage Rim_V_BG; //播放视频的控件

public MovieTexture Vo; //用来储存视频本身

public AudioClip VoAu; //用来储存视频中的声音

void Start () {
StartVideo();
}

void Update () {

}

//播放视频
public void StartVideo()
{
Vo.loop = true; //视频循环播放
Vo.Play(); //播放视频
Rim_V_BG.texture = Vo; //将RawImage上的纹理设置为视频
VoAu = Vo.audioClip; //将视频中的声音提取出来赋值给变量VoAu
gameObject.GetComponent<AudioSource>().clip = VoAu; //将声音源组件上的声音赋值为视频中的声音
gameObject.GetComponent<AudioSource>().Play(); //播放声音源组件
}

//停止视频广告的函数
public void StopVideo()
{
Vo.Stop();
gameObject.GetComponent<AudioSource>().Stop();
}
}
3.创建一个空物体,重命名为Sc_Manager,分别将两个脚本挂载到这个物体上,并添加Audio_Source组件



4.选中Bt_M_V_Q奇幻旅程按钮,将Sc_Manager拖动到On Click中,并且将函数选择为UI_Manager.BT_M_V_Q(即播放视频的方法)



5.选中按钮Bt_M_A_P,,将Sc_Manager拖动到On Click中,并且将函数选择为UI_Manager.BT_M_A_P(即停止播放视频的方法)



6.运行后的界面,视频开始播放



点击拍照按钮视频停止播放



在视频停止播放的状态下点击奇幻旅程按钮,视频开始重新播放



注:1.参考资料:http://edu.manew.com/course/216/learn#lesson/3293

遇到的问题:

2.视频文件不能赋值给变量

脚本中添加了视频变量



将脚本添加到一个物体上,将视频赋值给变量的时候拖动不上去



原因:不能直接拖动到在Assets中创建的子文件夹中,要先拖动到Assets文件夹下

解决办法:先将文件拖动到Assets文件夹下,当弹出Apply对话框的时候点击Apply



3.播放视频需要先安装QuickTime
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: