[Unity] unity中movieTexture实现视频播放

查看:875 |回复:8 | 2014-10-11 02:00:33

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 大西几 于 2021-2-24 16:28 编辑

可以直接将ogg格式的材质赋给物体,这样需要加代码让这个这个视频播放起来。

function Update () {
renderer.material.mainTexture.Play();
}

这里我写了一个新的代码,实现播放暂停以及切换视频。不过这个代码要赋给摄像机,如果赋给物体的话在编辑器里好用,但是发布出来的时候就不好用了。


public var bofang:boolean = false;

public var movieTexture:MovieTexture;

function Start(){

movieTexture.Stop();

}

private var flag01:boolean = true;
function Update(){
if(!bofang){
return;
}

// 赋值剪辑到音频源
// 与音频同步播放
audio.clip = movieTexture.audioClip;
// 播放视频和音频

movieTexture.loop = true;

//renderer.material.mainTexture.wrapMode = TextureWrapMode.Clamp;
if(flag01){
movieTexture.Play();
audio.Play();
}else{
movieTexture.Pause();
audio.Pause();
}

}

//加上 播放暂停 关闭

//播放器
private var BFQWidth:float = 650;
private var BFQHeight:float = 490;
var BFQTexture:Texture;
private var BFQGBWidth:float = 16;
private var BFQGBHeight:float = 15;
var BFQGBStyle:GUIStyle;//关闭按钮
//播放器 播放暂停
private var BFQPlayWidth:float = 22;
private var BFQPlayHeight:float = 22;
var BFQPlayStyle:GUIStyle;//播放按钮
var BFQPauseStyle:GUIStyle;//暂停按钮

function OnGUI(){
if(!bofang){
return;
}
GUI.DrawTexture(new Rect(187, 139, BFQWidth, BFQHeight), BFQTexture, ScaleMode.StretchToFill);
GUI.DrawTexture (Rect (192,144, 640, 480),movieTexture,ScaleMode.ScaleToFit );
movieTexture.Play();
//关闭按钮
if(GUI.Button (Rect (800, 155, BFQGBWidth, BFQGBHeight),"",BFQGBStyle)){
GameObject.Find("Data").GetComponent("Data").cameraMain.enabled = true;
GameObject.Find("Data").GetComponent("Data").cameraView.enabled = false;
bofang = false;
guiTexture.texture = null;
gameObject.GetComponent("MovieControler").enabled = false;
}
//播放暂停

if(!flag01){
if(GUI.Button (Rect (800, 597, BFQPlayWidth, BFQPlayHeight),"",BFQPlayStyle)){
flag01 = true;
}

}else{
if(GUI.Button (Rect (800, 597, BFQPlayWidth, BFQPlayHeight),"",BFQPauseStyle)){
flag01 = false;
}
}
}

function GuanBi(){
GameObject.Find("Data").GetComponent("Data").cameraMain.enabled = true;
GameObject.Find("Data").GetComponent("Data").cameraView.enabled = false;
bofang = false;
guiTexture.texture = null;
gameObject.GetComponent("MovieControler").enabled = false;

}

// 确保我们有GUI 纹理和音频源
@script RequireComponent(GUITexture)
@script RequireComponent(AudioSource) image.png
2014-10-11 02:00:33  
 赞 赞 1

使用道具 登录

8个回答,把该问题分享到群,邀请大神一起回答。
3#
太感谢啦,这个函数一直没接触过,今天学习啦
回复 收起回复
2018-6-30 00:04:43   回复
 赞 赞 1

使用道具 登录

4#
unity中movieTexture实现视频播放
回复 收起回复
2018-7-6 17:26:00   回复
 赞 赞 1

使用道具 登录

5#
感谢分享
回复 收起回复
2018-11-9 22:37:44   回复
 赞 赞 1

使用道具 登录

6#

感谢分享
回复 收起回复
2018-11-11 09:47:39   回复
 赞 赞 1

使用道具 登录

7#
unity中movieTexture实现视频播放 [修改]
回复 收起回复
2018-11-11 10:13:23   回复
 赞 赞 1

使用道具 登录

8#
这个可以做监视器啊。23333
回复 收起回复
2018-11-11 10:15:19   回复
 赞 赞 1

使用道具 登录

9#
想要成大触,天天上元素!
回复 收起回复
2018-11-11 11:07:40   回复
 赞 赞 1

使用道具 登录

CG 游戏行业专业问题

Unity3D技术手机游戏引擎手游引擎
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表