Unity入门操作_视频_036

Unity支持的播放视频格式有.mov、.mpg、.mpeg、.mp4、.avi和.asf。只需将对应的视频文件拖拽入Project视图即可,它会自动生成对应的MovieTexture对象。如下图所示,MOMO将default_video.mp4拖拽入Project视图中,如果视频中含有音频的话会对应生成audio文件,因为我的视频没有音频所以没有生成 audio文件。接着在Hierarchy视图中创建一个Plane对象视频将在它之上播放,Directional light世界定向光用于照亮整个游戏场景,最后Main Camera对象将直直的照射在Plane对象。

基于游戏对象纹理的播放视频:
在场景中我们可以创建一个Plane(单面)或者Cube(六面)游戏对象,通过获取视频的MovieTexture,并将此视频纹理赋给游戏对象实现播放

操作步骤:
1首先导入视频资源(这个操作视较耗时的,请耐心等待)
这里写图片描述
2创建游戏对象(灯光调暗)
这里写图片描述
3创建一个Render Texture
这里写图片描述
这里写图片描述
4创建一个材质球,并添加纹理
这里写图片描述
再将材质球添加到游戏对象上效果如下;
这里写图片描述

接下来就是添加脚本了
using UnityEngine;
using System.Collections;
public class MovieTest : MonoBehaviour {

private Texture texture;
public MovieTexture movieTexture;
private AudioSource m_audio;
// Use this for initialization
void Start () {
    texture = GetComponent<MeshRenderer>().material.mainTexture = movieTexture;
    m_audio = GetComponent<AudioSource>();
    movieTexture.Play();
}
// Update is called once per frame
void Update () {
    //表示视频总时长
    Debug.Log(movieTexture.duration);
    if (Input.GetKeyDown(KeyCode.Q))      
    {
        if (movieTexture.isPlaying == false)
        {
            movieTexture.Play();
            m_audio.Play();
        }
        else
        {
            //这是暂停
            movieTexture.Pause();
            m_audio.Pause();
        }
    }
    if (Input.GetKeyDown(KeyCode.Return) && movieTexture.isPlaying)
    {
        //这是停止之后,再次点击Play就会重新开始
        movieTexture.Stop();
        m_audio.Stop();
    }
}

}
这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值