国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity | Video Player的簡單使用方法和原理

這篇具有很好參考價值的文章主要介紹了Unity | Video Player的簡單使用方法和原理。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、?Video Player的使用方法

講解邏輯為Unity | 基礎(chǔ)邏輯_菌菌巧樂茲的博客-CSDN博客

(一)把素材倉庫里的視頻放進Game界面

1.我們需要在素材倉庫中放一個視頻(其他文件夾不用管,我只是懶得刪了)

Unity | Video Player的簡單使用方法和原理

2.在Unity里建一個能接收視頻的地方VideoPlayer

Unity | Video Player的簡單使用方法和原理

備注:視頻和圖片是不一樣的,圖片到這一步組合一下就能用,但是視頻不行。因為Unity里不支持直接播放視頻,它只能播放動態(tài)的Texture。

3.我們來看一下VideoPlayer身上帶的組件

Unity | Video Player的簡單使用方法和原理

這里因為unity自己也知道,自己沒辦法直接播放視頻,所以它這里讓你可以填兩個東西,上面是你想播放的視頻,下面讓你填一個空的texture,之后,它會自己把視頻印到Texture上,所以這個組件并不是真的用來播放視頻的,而是用來轉(zhuǎn)換的。

4.所以我們需要建一個新的Texture來接收這個視頻(在這個界面右鍵→ Creat→可以找到RenderTexture)

Unity | Video Player的簡單使用方法和原理

把這個拖到剛才VideoPlayer上應(yīng)該在的位置

此時此刻,我們就成功把視頻印到這個新建的Texture身上了

5.我們需要建一個播放Texture的東西

unity播放Texture的物體叫RawImage

Unity | Video Player的簡單使用方法和原理

?把你的Texture拖進去

Unity | Video Player的簡單使用方法和原理

?這樣就可以播放視頻了

(二)大小控制

因為這個視頻是印到Texture身上,所以我們想改視頻的大小,就必須改Texture的大小

Unity | Video Player的簡單使用方法和原理

?因為這個texture是用RawImage播放的,所以我們也需要改rawImage的大?。ㄟ@步略)

(三)VideoPlayer組件常用部分

Unity | Video Player的簡單使用方法和原理

二?、Video Player的常用方法

控制視頻,我們還是通過VideoPlayer控制

所以我們先建一個腳本,寫一行代碼

public VideoPlayer videoPlayer;

在外面把這個物體拖進來

Unity | Video Player的簡單使用方法和原理

?然后就可以簡單使用了,下面是常用方法

videoPlayer.Play();  //開始
videoPlayer.Stop();  //停止
videoPlayer.Pause(); //暫停
videoPlayer.Prepare(); // 播放引擎準備(提高開始播放時的速度)
videoPlayer.targetTexture.Release(); //重播時,不出現(xiàn)之前結(jié)束時的畫面

videoPlayer.started += "方法名"                 //每次播放后立刻啟動方法
videoPlayer.loopPointReached += "方法名"        //每次到結(jié)尾,都會自己啟動這個方法
videoPlayer.time = 5;                           //視頻的時間調(diào)到第五秒
videoPlayer.frame = 1;                         //視頻調(diào)到第一幀

//常用案例中細講
videoPlayer.sendFrameReadyEvents = true;        //啟用videoPlayer.frameReady方法
videoPlayer.frameReady += "方法名"               //準備好新的一幀后啟動這個方法

?上面有方法名的示例代碼:

    videoPlayer.loopPointReached += FalseGameObject;
    void FalseGameObject(VideoPlayer videoPlayer) {
        gameObject.SetActive(false);
    }

方法的括號里必須要帶?VideoPlayer哦,后面那個小寫的是名字,可以自己起不要緊。

三、常用案例

(一)打開視頻后,顯示第一幀圖片

VideoPlayer中可以選擇自動打開并播放視頻,和不打開視頻。

但是有時候我們有需求,我希望第一幀出現(xiàn)在界面上,用來做封面或者其他。

圖例:

Unity | Video Player的簡單使用方法和原理

你希望再軟件里實現(xiàn)這個狀態(tài),展示視頻圖,但是又不播放。

基本邏輯:

1.我們讓它自動打開視頻(別忘了自己開這一步)

2.當準備好第一幀的時候,它會自動播放第一幀

3.趁他沒反應(yīng)過來,暫停它

    VideoPlayer vp;
    
    void Start()
    {
        //我一般把這個代碼直接掛在需要需要使用的VideoPlayer身上,這樣可以直接找到組件
        vp = GetComponent<VideoPlayer>();
        
        //frameReady這個方法是需要打開才能用的
        //這個下面這句話就是我把這個方法啟用
        vp.sendFrameReadyEvents = true;
        //當準備好新的一幀后,執(zhí)行下面方法
        vp.frameReady += PauseVideoUnitOnFirstFrame;
    }
    
    public void PauseVideoUnitOnFirstFrame(VideoPlayer player, long frameIdx)
    {
        //暫停播放
        player.Pause();
        //關(guān)掉這個方法,要不然它準備好第二幀又執(zhí)行,沒完沒了了
        player.sendFrameReadyEvents = false;
        //同時也去掉這個方法
        player.frameReady -= PauseVideoUnitOnFirstFrame;
    }

四、相關(guān)內(nèi)容

Unity | 如何使用webm透明視頻_菌菌巧樂茲的博客-CSDN博客

?五、關(guān)于性能優(yōu)化

1.播放方式優(yōu)化

正常拿電腦播放視頻有兩種方式:

假如我有10個視頻

1.我開機以后,把10個視頻都打開,也不關(guān),就一直都開著,用哪個就播放哪個。

優(yōu)點:點擊播放不會緩存(不會卡),因為都是提前加載好的

缺點:你一兩個視頻,哪怕三四個視頻都還好,你要是十幾二十幾個視頻一起開,電腦就卡死了,所以非常浪費性能。

2.我把10個視頻都準備好,但我不打開,我需要哪個再打開哪個。

優(yōu)點:不浪費性能,哪怕你準備100個視頻

缺點:你每次打開了才緩存,所以可能會卡

推薦用第二個。

2.代碼注意事項

視頻播放完,或者你用了暫停的方法,視頻本質(zhì)上都還是開著的,只是不播放了而已。

所以記得視頻播放完以后用stop()方法,把視頻關(guān)掉,降低內(nèi)存占用?。。?!文章來源地址http://www.zghlxwxcb.cn/news/detail-452501.html

到了這里,關(guān)于Unity | Video Player的簡單使用方法和原理的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Unity使用webSocket與服務(wù)器通信(二)——C#服務(wù)器端使用Fleck時的簡單服用方法

    Unity使用webSocket與服務(wù)器通信(二)——C#服務(wù)器端使用Fleck時的簡單服用方法

    C#服務(wù)端用到Fleck包,它包含哪些可用的回調(diào)函數(shù),有哪些常用的api方法? 演示:服務(wù)端收到Unity用戶發(fā)來的信息 Fleck提供的回調(diào)函數(shù)有下面幾種: 其它常用的api主要有: ping pong的作用是啥? WebSocket為了保持客戶端、服務(wù)端的實時雙向通信,需要確保客戶端、服務(wù)端之間的

    2024年02月08日
    瀏覽(20)
  • Unity零基礎(chǔ)到進階 ??| 視頻播放器 Video Player組件 詳解
  • Unity播放帶Alpha通道的視頻【W(wǎng)ebM+Video Player】(替代播放GIF方案)

    Unity播放帶Alpha通道的視頻【W(wǎng)ebM+Video Player】(替代播放GIF方案)

    在Unity中播放GIF或者動態(tài)效果,可以通過Video Player播放帶透明通道的WebM視頻來實現(xiàn)。 制作帶Alpha的MOV視頻 制作帶Alpha通道的MOV視頻有多重方式,如AE、PR、PS等等,具體制作過程可以自行百度。 將MOV視頻格式轉(zhuǎn)化為WebM格式 將WebM格式導入Unity,設(shè)置視頻播放 完成動態(tài)效果展示

    2024年02月13日
    瀏覽(26)
  • vue3視頻播放插件vue3-video-play的具體使用方法

    vue3視頻播放插件vue3-video-play的具體使用方法

    發(fā)布于:12分鐘前 之前的vue項目中用到視頻播放器,但是UI不是很好看,索性就打算寫一個視頻播放器插件緊隨著vue3的發(fā)布,vue3的生態(tài)還不是很完整,就索性把這個視頻播放器插件修改成了vue3版,最終使用vite2+vue3開發(fā) 插件Github地址?vue-video-player 先看一下這個播放器(vue3-vid

    2024年01月18日
    瀏覽(44)
  • 【Flutter】Flutter 使用 video_player 播放視頻

    【Flutter】Flutter 使用 video_player 播放視頻 大家好,我是小雨青年,今天我要和大家分享一款非常實用的 Flutter 包—— video_player 。這個包可以讓我們在 Flutter 應(yīng)用中輕松地嵌入和控制視頻播放,不論是 Android、iOS 還是 Web 平臺。 本文重點介紹: video_player 的基本功能和用法 如

    2024年02月05日
    瀏覽(18)
  • Vue3之使用vue-video-player

    Vue3之使用vue-video-player

    *vue-video-player 報錯The media could not be loaded, either because the server or network failed or because the format is not supported * 原因: 我的src的路徑即視頻文件存放到本地了,路徑直接寫 src: \\\'videos/demo.mp4\\\' 而不用 \\\"/videos/demo.mp4\\\" 二、剛開始運行安裝命令時,在入口文件引入報錯,會顯示找不到文

    2024年01月18日
    瀏覽(31)
  • 已解決 微信小程序uniapp使用video的時候全屏方法@fullscreenchange會執(zhí)行兩次

    原因: fullscreenchange事件會在進入全屏和退出全屏時各觸發(fā)一次。所以全屏切換期間會觸發(fā)兩次該事件。 解決方案: js Copy code 在監(jiān)聽fullscreenchange事件時,使用變量進行防抖處理。比如設(shè)置一個變量來記錄上一次的全屏狀態(tài),只有當狀態(tài)真正發(fā)生改變時才執(zhí)行處理邏輯。 使用

    2024年02月07日
    瀏覽(107)
  • vue 使用vue-video-player加載視頻(鋪滿容器)

    安裝 main.js 引入 使用 使視頻鋪滿容器

    2024年02月13日
    瀏覽(19)
  • vue2 使用 vue-video-player 播放m3u8 流地址視頻

    安裝插件? : 注意需要引入??videojs-contrib-hls ,否則無法播放hls流文件? main.js 引入 代碼內(nèi)引入: 注意點:??? 1.type: \\\'application/x-mpegURL\\\' ,否則無法播放流文件? 2.aspectRatio: \\\'16:9\\\',? 寬高比需要進行設(shè)置, 若沒有進行設(shè)置,會出現(xiàn)黑邊過高或者過寬的問題 常用API方法:

    2024年02月07日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包