zoukankan      html  css  js  c++  java
  • Unity添加视频的四种方式

    两种 方式需要的前期准备时间较长,后两种 方式前期不需要准备只需要添加一个Unity内置的脚本,其中各有优劣

    前两种性能消耗较低

    后两种性能消耗较高

    前两种需要的时间较长

    后两种需要的时间较短

    (1).第一种方式:

    http://dl.pconline.com.cn/download/460355.html

    解压上面的文件,然后将要进行转换的 视频文件拖拽到打开的软件里面去:

    然后在Unity场景中创建一个脚本(如下):

    public class TestUseless : MonoBehaviour {
     
        ///电影纹理
        public MovieTexture movTexture;
        void Start()
        {
            //设置电影纹理播放模式为循环
            movTexture.loop = true;
        }
        void OnGUI()
        {
            //  基于GUI播放视频
            GUI.DrawTexture(new Rect(0, 0, Screen.width, Screen.height), movTexture, ScaleMode.StretchToFill);
     
            if (GUILayout.Button("播放/继续"))
            {
                //播放/继续播放视频
                if (!movTexture.isPlaying)
                {
                    movTexture.Play();
                }
            }
     
            if (GUILayout.Button("暂停播放"))
            {
                //暂停播放
                movTexture.Pause();
            }
     
            if (GUILayout.Button("停止播放"))
            {
                //停止播放
                movTexture.Stop();
            }
        }
    }

    然后将其挂在一个Unity中的GameObject物体上(如下图):

    然后将上面进行转换的视频拖拽到Unity工程中去(如下图):

    选中将其的视频格式改为:

    然后将上面转换后的视频拖拽进去

    就能够实现视频的播放了,但是视频中缺少声音,所以我们就需要往GameObject物体身上添加一个AudioSource组件,然后将刚才进行转换的视频下面的声音拖拽进去,(就完成了第一种方法的创建)

    (2).第二种方式:

    按照第一种创建.org视频的方式首先创建出一个视频:

    然后在工程中创建一个脚本和一个刮油Mesh Renderer组件的Plan面板

    public class PlayVideoSctips : MonoBehaviour {
        //电影纹理
        public MovieTexture movTexture;
        void Start()
        {
            //设置当前对象的主纹理为电影纹理
            transform.GetComponent<MeshRenderer>().material.mainTexture = movTexture;
            //设置电影纹理播放模式为循环
            movTexture.loop = true;
        }
        void OnGUI()
        {
            if (GUILayout.Button("播放/继续"))
            {
                //播放/继续播放视频
                if (!movTexture.isPlaying)
                {
                    movTexture.Play();
                }
            }
     
            if (GUILayout.Button("暂停播放"))
            {
                //暂停播放
                movTexture.Pause();
            }
            if (GUILayout.Button("停止播放"))
            {
                //停止播放
                movTexture.Stop();
            }
        }
    }

    然后按照如图方式,进行添加:(这样就完成了第二种方式)

    (3).第三种方式:

    (这种方式能够识别任何类型的视频,这种方式相对消耗的性能较高(推测))

    首先创建一个空物体,在上面添加脚本

    需要注意的是往自身身上添加AudioSource不会产生效果 需要的操作是:

     

    然后将其添加到脚本中去!!!!!!

    (4).第四种方式:

    这种方式能够固定相应的大小进行设置,这种方式你可以设置播放的屏幕的大小

    1.首先创建出一个RenderTexture

    2.然后创建一个空物体,往其中添加脚本,往其中添加入相应的物体:

    注意点:其中关于AudioSource的创建方式,必须如第三种情况一样进行创建

    3.然后创建一个UI的RawImage组件,像其中添加相应的物体

    这样控制RawImage的大小就能控制播放视频的大小

     

    以上就是Unity添加视频的四种方式,大家可以选择自己喜欢的方式和特定的情况进行选择,希望能帮助到大家,大家有不懂得或者我错的,欢迎在下方评论区进行评论,大家一起学习,谢谢!!!!!

    文章转自:https://www.cnblogs.com/baosong/p/9538111.html

  • 相关阅读:
    ABAP术语-Interface
    ABAP术语-Interface Parameter
    ABAP术语-Implementation
    ABAP术语-IDOC
    ABAP术语-IAC (Internet Application Components)
    ABAP术语-HTML
    ABAP术语-Function Module
    ABAP术语-Function Library
    ABAP术语-Function Group
    PyCharm的小技巧
  • 原文地址:https://www.cnblogs.com/baosong/p/9538111.html
Copyright © 2011-2022 走看看