视频控制
视频播放 (AVProPlayer)
在合适的地方添加AVProPlayer
组件,并添加Display UGUI
组件,并为MediaPlayer
属性赋值

脚本控制 (AVProPlayer)
在合适的位置调用Managements.UI.Show显示该UI,UI在显示时将会播放Idle.mp4视频
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UNIHper;
using DNHper;
public class IdleUI : UIBase
{
// Start is called before the first frame update
private void Start() { }
// Update is called once per frame
private void Update() { }
// Called when this ui is loaded
protected override void OnLoaded() { }
// Called when this ui is shown
protected override void OnShown()
{
// 循环播放
this.Get<AVProPlayer>().Play("Videos/Idle.mp4", null, true);
// 不循环播放
/* this.Get<AVProPlayer>()
.Play(
"Videos/Idle.mp4",
_ =>
{
Debug.Log("视频播放结束");
},
false
);*/
}
// Called when this ui is hidden
protected override void OnHidden() { }
}
多视频管理 (MultipleAVProPlayer)
单个视频组件在切换视频时会存在加载时间,故存在一定的黑帧。当需要优化多个视频切换的时间时,Multiple AVPro Player
会更合适。
使用方法
在适当位置添加Multiple AVPro Player组件

脚本控制 (MultipleAVProPlayer)
using System.Collections;
using System.Collections.Generic;
using UNIHper;
using DNHper;
using Unirx;
public class IdleUI : UIBase
{
// Start is called before the first frame update
private async void Start()
{
// 等待视频准备完成
await this.Get<MultipleAVProPlayer>()
.PrepareVideos(new List<string> { "Videos/视频1.mp4", "Videos/视频2.mp4" });
var _player = this.Get<MultipleAVProPlayer>();
// 播放视频
_player.Play("Videos/视频1.mp4", null, true);
// 切换到下一个视频
_player.SwitchNext();
// 切换到上一个视频
_player.SwitchPrev();
// 切换到指定视频
_player.Switch("Idle.mp4");
}
}
视频切换过渡

视频过渡效果支持Alpha和Color两种过渡效果,可在属性面板进行切换。
Note: RenderTarget为DisplayUGUI模式时,仅支持Alpha过渡
Last updated