NGUI之视频接入与播放控制
2015-07-05 17:59
573 查看
今天在做项目时,需要给游戏加待机视频,我用的是NGUI,在网上搜了一下,都是讲的unity接视频,对于ngui没有可参照的方法,于是自己就想了一个方法,效果很好,在此就分享给大家。
首先用NGUI制作游戏场景,场景如下:
其中PLAY、PAUSE、STOP三个按钮分别控制视频的播放、暂停、停止
Project视图如下:
PlayVideo为控制视频播放的脚本,绑定在Camera上,文件夹Videos下的NGUI 3.0.7video为一个讲解NGUI的视频资源
Hierarchy视图如下:
其中PlayBtn按钮控制视频播放,PauseBtn按钮控制视频暂停,StopBtn按钮控制视频停止,Video为NGUI的Texture对象,下面主要讲该对象,选择Video,其Inspector面板如下所示:
如上图所示,将Projcetor面板下的Videos文件夹中的NGUI 3.0.7video视频资源拖入上图的1区域,在2区域设定视频的播放窗口和NGUI摄像机的窗口同样大小,下面就是脚本控制了,直接上代码:
如上所示,就是这么简单,三个回调函数分别和按钮PlayBtn、PauseBtn、StopBtn相连接即可
点击运行就可以看到视频播放效果了!
首先用NGUI制作游戏场景,场景如下:
其中PLAY、PAUSE、STOP三个按钮分别控制视频的播放、暂停、停止
Project视图如下:
PlayVideo为控制视频播放的脚本,绑定在Camera上,文件夹Videos下的NGUI 3.0.7video为一个讲解NGUI的视频资源
Hierarchy视图如下:
其中PlayBtn按钮控制视频播放,PauseBtn按钮控制视频暂停,StopBtn按钮控制视频停止,Video为NGUI的Texture对象,下面主要讲该对象,选择Video,其Inspector面板如下所示:
如上图所示,将Projcetor面板下的Videos文件夹中的NGUI 3.0.7video视频资源拖入上图的1区域,在2区域设定视频的播放窗口和NGUI摄像机的窗口同样大小,下面就是脚本控制了,直接上代码:
<strong><span style="font-family:KaiTi_GB2312;font-size:14px;">using UnityEngine; using System.Collections; public class PlayVideo : MonoBehaviour { MovieTexture videoSource;//视频资源 GameObject videoBind;//视频对象 void Start () { videoBind = GameObject.Find("Video"); videoSource = (MovieTexture)videoBind.GetComponent<UITexture>().mainTexture;//将视频对象的mainTexture赋予视频资源 videoSource.loop = true;//设置视频为循环播放 } /// <summary> /// 播放按钮回调函数 /// </summary> public void PressPlayButtonDownCallback() { if (!videoSource.isPlaying) { videoSource.Play(); } } /// <summary> /// 暂停按钮回调函数 /// </summary> public void PressPauseButtonDownCallback() { if (videoSource.isPlaying) { videoSource.Pause(); } } /// <summary> /// 停止按钮回调函数 /// </summary> public void PressStopButtonDownCallback() { if (videoSource.isPlaying) { videoSource.Stop(); } } }</span></strong>
如上所示,就是这么简单,三个回调函数分别和按钮PlayBtn、PauseBtn、StopBtn相连接即可
点击运行就可以看到视频播放效果了!
相关文章推荐
- Google-Guice入门介绍
- Java快速排序(QuickSort)算法实现
- 日志二:GUI编程及文件对话框的使用
- java 中的 String (to be continued)
- Ogre编程入门与进阶】第十七章 Ogre3D 和CEGUI 的结合
- LeetCode: Distinct Subsequences [115]
- UISearchBar控件-让我们来搞定!
- easyui中tree型控件不正常显示的处理方法
- UVA 1151 Buy or Build (MST最小生成树,kruscal,变形)
- 1.QT该容器QVector,QList,QSet,QMap,QQueue,QStack,QMultiMap,QSingleList等待
- UIPickerView学习笔记
- UITextField / UIButton / 回收键盘delegate
- UIButton和UISlider
- Scala 的Value Class 和 Universal Traits
- Implement Stack using Queues 用队列实现栈
- System.Web.UI.WebControls的Web服务器控件
- POJ 2593&&2479:Max Sequence
- POJ 2593&&2479:Max Sequence
- UIColor和UIImage转换
- iOS UICollectionView基础