资源名AVPro Video 1.10

首先介绍一下unity自带的播放器Video Player

要把大象装进冰箱需要几步

首先创建一个新的工程并创建好canvas与videoplayer

unity VideoPlayer 没反应 unityplayer._图片缓存


第二步:在文件夹内创建一个存储视频图像的文件

unity VideoPlayer 没反应 unityplayer._ide_02


第三步把创建出来的图片存储赋给视频面板并把Source属性调整为绝对路径URL寻找到你的视频在此值得一提的是在工程内StreamingAssets这个文件夹需要自己创建他的作用在于你打包程序后这个文件夹的内容不被编码从而可以从外部替换

unity VideoPlayer 没反应 unityplayer._unity_03


在canvas内创建一个Rawimage并把创建过存储视频的Texture赋给Rawimage中Texture属性此时他的运行效果是这样的

unity VideoPlayer 没反应 unityplayer._全屏_04


由于我们需要全屏展示 所以需要对存储的Texture进行设置成全屏的分辨率 我们就手动调吧把默认的256改成对应需要的分辨率 我这里就全屏了1920*1080

unity VideoPlayer 没反应 unityplayer._ide_05


在Rawimage也要更新他的图像显示大小

unity VideoPlayer 没反应 unityplayer._图片缓存_06


此时的运行效果就是这样了

unity VideoPlayer 没反应 unityplayer._unity_07


如果不更改Texture直接更改Rawimage的尺寸或者scale会导致图片丢失像素点最终效果就是看不清

如不运行这个Rawimage会存储最后一次播放的图片的画面 这里需要自己用代码进行优化清除图片缓存具体的我就不写了 提供一个思路 他的优点在于视频切换视频时不存在黑帧可以实现完美切换

接下来说道MediaPlayer视频插件 他的优势在于可以做3D透明背景的效果我这里展示一下

原视频效果

unity VideoPlayer 没反应 unityplayer._unity_08


实际显示效果

unity VideoPlayer 没反应 unityplayer._图片缓存_09


具体实现需要拥有透明通道的左右或上下视频实现

并再插件内进行处理最终实现的效果就是这样 其缺点在于切换视频的过程中存在黑帧