C# 渲染会减慢统一性吗?

C# 渲染会减慢统一性吗?,c#,unity3d,video,render,C#,Unity3d,Video,Render,我很困惑这里到底出了什么问题,但我确信问题出在我的渲染器/视频播放器上——我可能有20个iPhone游戏对象,我需要制作动画.mov文件在屏幕后面播放 为此,我按照教程将视频播放器与渲染纹理(现在大约有8种)连接起来,如下所示,然后将渲染纹理插入材质中的发射槽: 即使有2个渲染纹理立方体,游戏也令人难以置信地滞后,以下是统计数据 我试图关闭深度,但不知道这里出了什么问题-我的电影文件仅在KB范围内。如何在不延迟的情况下播放视频?基于渲染的每帧占用848毫秒的CPU,您显然在CPU方面遇到了

我很困惑这里到底出了什么问题,但我确信问题出在我的渲染器/视频播放器上——我可能有20个iPhone游戏对象,我需要制作动画.mov文件在屏幕后面播放

为此,我按照教程将视频播放器与渲染纹理(现在大约有8种)连接起来,如下所示,然后将渲染纹理插入材质中的发射槽:

即使有2个渲染纹理立方体,游戏也令人难以置信地滞后,以下是统计数据


我试图关闭深度,但不知道这里出了什么问题-我的电影文件仅在KB范围内。如何在不延迟的情况下播放视频?

基于渲染的每帧占用848毫秒的CPU,您显然在CPU方面遇到了瓶颈。如果您希望以每秒30帧的速度运行,则需要使CPU时间低于每帧33毫秒

由于添加视频播放器后CPU时间明显变差,因此视频编解码器似乎对您的CPU造成了沉重负担。考虑尽可能减少视频质量,特别是降低分辨率。
如果这不起作用,则可能需要使用动画精灵图纸实现基于着色器的解决方案。这对您来说需要更多的工作,但它在引擎中的运行效率会更高。

打开探查器,启动游戏,等待它变慢,然后暂停游戏,并向我们展示cpu使用时间线。根据我过去使用
VideoPlayer
API的实验,它一次只能处理一个视频。如果尝试使用多个
视频播放器加载多个视频,则会遇到延迟或内存问题,尤其是在移动设备上。您可以选择使用assetstore中的expinse视频API,也可以尝试不使用RenderTexture。尝试使用
RawImage
组件来显示视频。@程序员说得通,谢谢-所以您推荐RawImage组件?或者您是否考虑了特定的资产?是的,我推荐RawImage,这就是我所使用的。有关示例,请参见。如果需要,始终可以将画布设置为世界空间。