国产探花免费观看_亚洲丰满少妇自慰呻吟_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


    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 望谟县| 平山县| 瓦房店市| 安岳县| 清丰县| 大丰市| 光山县| 宜宾市| 白水县| 上高县| 盐池县| 图木舒克市| 广南县| 措勤县| 介休市| 莲花县| 丘北县| 米泉市| 林西县| 恩平市| 彩票| 湛江市| 抚顺县| 庄河市| 巴林右旗| 达日县| 莆田市| 垣曲县| 洛阳市| 梓潼县| 化德县| 临桂县| 儋州市| 石景山区| 菏泽市| 上犹县| 扶沟县| 怀仁县| 天门市| 双流县| 安平县|