赞
踩
目录
前段时间在做Unity项目时发现一个问题,我想让一个quad的面上播放视频,同时将相机的视口刚好匹配对齐这个面,使播放的内容能够完美显示在Game窗口便于后续导出,下面是其实现方法
可以看到此时新建好的quad默认是预设材质,尺寸也是初始状态
在Assets中拖入一个视频(这里采用直接往unity文件中拖文件的方法,不考虑使用Load加载的情况),然后将该视频直接拖到上一步建好的quad上。这是会发现在quad的inspector下多了一个component,其中videoClip就是想要播放的视频文件,这里是4月6日
完成上述步骤后会发现,当点击Play后,quad会播放此挂载的视频,但是其长宽比会根据quad的长宽进行自动缩放,导致比例失真。比如原视频是一个1920*1080的分辨率,其长宽比为4比1,但是在这种情况下为1比1。下面是解决方法
在上述component中,将RenderMode修改为CameraNearPlane,然后在新出现的Camera中将视口对应的相机拖入,这里就是原先的MainCamera。此时点击Play后可以发现,视频内容会恰好匹配视口大小进行播放。
在以上操作中可以发现几个特点,该方式播放的视频类似于UI层面的操作,即视频其实是在一个Canvas上,此时原先新建的quad自身的缩放对视频本身的尺寸没有影响,仅仅是一个播放载体,VideoPlayer也可以挂载到其他空物体上,起到同样的效果。
此外想要视频完整播放,需要将Play视口的大小调整至需要的分辨率,或者需要的长宽比,这样才能使视频恰好在对应的视口上播放。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。