Есть ли максимальное разрешение видео текстуры в A-Frame? - PullRequest
3 голосов
/ 04 марта 2020

У меня есть видео-сфера, и я хочу наложить на нее видео-текстуру высокого разрешения (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 501

Когда я уменьшаю текстуру видео до 2560 x 1280, видеосфера показывает текстуру, как и ожидалось, без ошибок.

Существует ли максимальное разрешение текстуры в AFrame или три. js что я не знаю?

1 Ответ

3 голосов
/ 04 марта 2020

Ограничение устанавливается не A-Frame или Three. js, а WebGL и возможностями вашей видеокарты. Go до https://webglreport.com/ и посмотрите в поле Textures > Max Texture Size, чтобы узнать, что может использовать устройство, которое вы используете. Мой ноутбук достигает максимума в 8192, мой мобильный телефон ниже, но мой рабочий стол идет выше. Это зависит от вашего графического процессора. Я предполагаю, что ваша машина максимально достигает 4096.

enter image description here

Вы можете получить это значение за три. js с WebGLRenderer.capabilities.maxTextureSize, как указано в документации , чтобы вы могли считывать это значение на разных устройствах и соответственно корректировать. Может быть, вы хотели бы указать меньшее количество видео на основе ограничений.

...