国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Unity3D游戲開發之在Unity3D中實現視頻播放

2019-11-17 03:13:04
字體:
來源:轉載
供稿:網友

Unity3D游戲開發之在Unity3D中實現視頻播放

大家好,我是秦元培,歡迎大家關注我的博客,我的博客地址是blog.csdn.net/qinyuanpei。

今天我們來做一個在Unity3D中實現視頻播放的實例。首先,Unity支持的播放視頻格式有.mov、.mpg、.mpeg、.mp4、.avi和.asf。我們只需要將這些文件放在項目文件夾里就可實現視頻文件的導入。在Window系統下,我們需要在蘋果公司的QuickTime軟件下才能順利地將視頻文件導入Unity。如果視頻文件含有音頻文件,那么在導入Unity后會生成相應的音頻文件。在Unity3D中實現視頻播放的方法有兩種:基于紋理貼圖、基于GUI。我們下面分別來講解:

1、基于紋理貼圖

[csharp]view plaincopyPRint?在CODE上查看代碼片

usingUnityEngine;
  • usingSystem.Collections;
  • publicclassMovieByTexture:MonoBehaviour{
  • //電影紋理貼圖
  • publicMovieTexturemMovie;
  • //電影音頻源
  • privateAudioSourcemAudio;
  • //媒體信息定義
  • privatestringmediaName;//媒體名稱
  • privatestringmediaLength;//媒體長度
  • voidStart()
  • {
  • mAudio=GetComponent<AudioSource>();
  • //設置當前對象的主紋理為電影紋理貼圖
  • renderer.material.mainTexture=mMovie;
  • //設置電影紋理播放模式為循環
  • mMovie.loop=true;
  • //開始播放電影
  • mMovie.Play();
  • //開始播放音樂
  • mAudio.Play();
  • }
  • voidUpdate()
  • {
  • //在這里更新媒體信息
  • mediaName=mMovie.name;
  • mediaLength=mMovie.duration.ToString();
  • }
  • voidOnGUI()
  • {
  • //播放控制
  • if(GUILayout.Button("播放",GUILayout.Height(30)))
  • {
  • mMovie.Play();
  • mAudio.Play();
  • }
  • //暫停控制
  • if(GUILayout.Button("暫停",GUILayout.Height(30)))
  • {
  • mMovie.Pause();
  • mAudio.Pause();
  • }
  • //停止控制
  • if(GUILayout.Button("停止",GUILayout.Height(30)))
  • {
  • mMovie.Stop();
  • mAudio.Stop();
  • }
  • //繪制文本信息
  • GUILayout.Label("媒體名稱:"+mediaName,GUILayout.Height(30));
  • GUILayout.Label("媒體長度:"+mediaLength,GUILayout.Height(30));;
  • }
  • }
  • %20%20%202、基于GUI

    [csharp]view%20plaincopyprint?usingUnityEngine;
  • usingSystem.Collections;
  • publicclassMovieByGUI:MonoBehaviour{
  • //電影紋理貼圖
  • publicMovieTexturemMovie;
  • //電影音頻源
  • privateAudioSourcemAudio;
  • //媒體信息定義
  • privatestringmediaName;//媒體名稱
  • privatestringmediaLength;//媒體長度
  • voidStart()
  • {
  • mAudio=GetComponent<AudioSource>();
  • //設置當前對象的主紋理為電影紋理貼圖
  • renderer.material.mainTexture=mMovie;
  • //設置電影紋理播放模式為循環
  • mMovie.loop=true;
  • //開始播放電影
  • mMovie.Play();
  • //開始播放音樂
  • mAudio.Play();
  • }
  • voidUpdate()
  • {
  • //在這里更新媒體信息
  • mediaName=mMovie.name;
  • mediaLength=mMovie.duration.ToString();
  • }
  • voidOnGUI()
  • {
  • //繪制電影紋理貼圖
  • GUI.DrawTexture(newRect(0,0,Screen.width,Screen.height),mMovie);
  • //播放控制
  • if(GUILayout.Button("播放",GUILayout.Height(30)))
  • {
  • mMovie.Play();
  • mAudio.Play();
  • }
  • //暫停控制
  • if(GUILayout.Button("暫停",GUILayout.Height(30)))
  • {
  • mMovie.Pause();
  • mAudio.Pause();
  • }
  • //停止控制
  • if(GUILayout.Button("停止",GUILayout.Height(30)))
  • {
  • mMovie.Stop();
  • mAudio.Stop();
  • }
  • //繪制文本信息
  • GUILayout.Label("媒體名稱:"+mediaName,GUILayout.Height(30));
  • GUILayout.Label("媒體長度:"+mediaLength,GUILayout.Height(30));;
  • }
  • }
  • %20%20%20%20代碼十分簡單,這里不再贅述了。我們可以直接在場景中創建一個Plane,然后將腳本拖放到該對象上,再指定了音頻文件、視頻文件后就可以實現視頻的播放了。最終效果如圖所示:

    今天的內容就是這樣了,最近不知道該寫點什么了,大家想了解什么內容的話,可以給我留言啊。

    喜歡我的博客請記住我的名字:秦元培,我的博客地址是:blog.csdn.net/qinyuanpei

    轉載請注明出處,本文作者:秦元培,本文出處:http://blog.csdn.net/qinyuanpei/article/details/24130347


    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 内江市| 泰来县| 拜城县| 方正县| 新郑市| 手游| 巩留县| 台湾省| 靖边县| 奎屯市| 余庆县| 陆良县| 本溪| 永宁县| 天峨县| 利津县| 潞城市| 林西县| 宜州市| 陕西省| 千阳县| 东宁县| 北碚区| 普兰县| 光山县| 鹤庆县| 临泽县| 贡嘎县| 固安县| 克山县| 青海省| 阿拉尔市| 岗巴县| 大新县| 晋中市| 黎平县| 昌平区| 定襄县| 通化县| 龙海市| 长汀县|