unity 视频录制总结

实现一个unity视频录制的功能,遇到的问题是因为特殊的原因不能用unity store中的插件,采用在unity截屏,然后把指针传递给安卓进行编码器编码。由于场景中有多个相机,在渲染到rendertexture的时候可能会出现录制视频的时候没有等所有的相机都渲染完成就进行编码了,而且出现一个比较奇怪的情况是遮挡关系在录制视频中可能会失效。最后的解决方法是用一个专门的相机来做截图渲染,在OnRenderImage中使用 Graphics.Blit来更新rendertexture,而不是用camera.render方法渲染到rendertexture。因为在camera OnRenderImage是等所有渲染环节完成之后进行的,而在update中调用camera.render可能并没有等渲染pipline完成,导致录制视频的遮挡可能是有问题的。

 

另外在后处理的时候 blit方法中destnation的rendertexture 可能与camera 输出绑定,有时候直接用destnation的rendtexture直接保存图片或视频可能有问题,需要自己新建rendertexture 从source中重新blit 出来。遇到的问题是直接从destnation blit增加水印到自己的texture会有一些异常,最终还是从source多blit了一次到自己的rendertexture中,虽然功耗要多一些相当又做了一遍后处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值