我正在尝试使用VideoPlayer组件(以URL源和RenderTexture为目标,以在我的Unity手机游戏中显示视频。视频已加载并开始播放,但是生成的纹理只有一种颜色。颜色的确会将每一帧更改为与视频看起来像该帧的颜色相同的颜色,但这只是第一种颜色。音频工作正常。在VideoPlayer组件上,“纵横比”设置为“ Fit Inside”,但是我在这里尝试了所有选项,结果相同。对于RenderTexture,将其设置为与输入视频相同的分辨率,并将“颜色格式”设置为RGB565(Android和iOS均应根据SystemInfo.SupportRenderTextureFormat()支持)。我全都没主意,将不胜感激。
编辑:一种解决方法可能是使用“材质替代”,而不是渲染到纹理。但是,如果您要专门使用纹理而不是仅在材质上显示视频,那么这将不起作用,此外,“材质覆盖”不支持具有多个渲染器/材质的对象。并不是真正的解决方法,但是对于在发现解决方案之前发现此问题的人来说,这是一种解决方法。
我自己拥有并修复了它。在“原始图像”中,搜索UV Rect并将其W和H设置为1。我更改了它,使其仅采样了1个像素。