A帧中是否有最大的视频纹理分辨率?

问题描述 投票:0回答:1

我有一个视频球,我想在其上映射高分辨率(5100 x 2550px)的视频纹理。

<video
        id="my-video"
        preload="auto"
        src="./assets/video/video.mp4"
        crossorigin="anonymous"
        playsinline
        webkit-playsinline
      ></video>

...

 <a-videosphere play-on-click id="skyVideo" rotation="-30 0 0" src="#my-video" class="cantap">
    </a-videosphere>  

当我加载高分辨率视频时,视频球是黑色的,并且出现以下错误:WebGL Error 501

当我将视频纹理缩小到2560 x 1280时,视频球体将按预期显示纹理,没有错误。

AFrame或three.js中是否有我不知道的最大纹理分辨率?

three.js webgl aframe
1个回答
0
投票

该限制不是由A-Frame或Three.js确定的,而是由WebGL和您的图形卡功能确定的。转到https://webglreport.com/并查看Textures > Max Texture Size字段,以查看您正在使用的设备可以处理的内容。我的笔记本电脑的最大负载为8192,我的手机较低,但台式机较高。具体取决于您的GPU。我的猜测是您的机器最大可以达到4096。

enter image description here

您可以通过WebGLRenderer.capabilities.maxTextureSizeas outlined in the docs在Three.js中获得此值,因此您可以在其他设备上读取此值并进行相应调整。也许您想根据限制指向较低的rez视频。

© www.soinside.com 2019 - 2024. All rights reserved.