Мерцание анимации WebGL, объект слишком большой?
Я создал анимацию webgl, используя библиотеку scenejs (запустите ее, нажав кнопку в левом нижнем углу, обратите внимание, что она также воспроизводит музыку, которую в настоящее время нельзя отключить).
Проблема, с которой я сталкиваюсь, заключается в том, что пол / плоскость в середине начинает мигать и продолжает мерцать / мигать во время анимации. Только ближе к самому концу мерцание опускается и к концу полностью прекращается (когда самолет вот-вот закончится).
Если я уменьшу размер самолета до 10% от его размера (с ~26000 до ~2600), он не будет мерцать вообще.
Я пытался настроить масштаб текстуры, не имеет никакого эффекта. Понижение fps, похоже, тоже не дало эффекта. Есть ли у WebGL проблемы с рендерингом больших объектов? Есть ли работа вокруг этого?
Вероятно, это может сделать самолет статичным и иметь движущуюся текстуру, но это, безусловно, сделает намного больше вещей более хитрыми, особенно, когда к нему добавляется больше элементов.
Настройка requestAnimationFrame
не имел никакого эффекта, и не сделал удаление видео вспышки. Единственный раз, когда он работает нормально, это когда самолет значительно меньше или когда он подходит к концу.
1 ответ
Сцена выглядит хорошо для меня - что происходит, когда вы удаляете Flash?
PS. Поделитесь этим на jsFiddle, если вам нравится... http://jsfiddle.net/
Кроме того, что происходит, когда вы используете опцию requestAnimationFrame для цикла рендеринга?
Пример здесь: http://scenejs.wikispaces.com/scene