Мерцание анимации WebGL, объект слишком большой? - PullRequest
4 голосов
/ 04 июня 2011

Я создал webgl анимацию , используя библиотеку scenejs (запустите ее, нажав кнопку внизу слева, обратите внимание, что она также воспроизводит музыку, которую вы не можете отключить в настоящее время).

Проблема, с которой я сталкиваюсь, заключается в том, что пол / плоскость в середине начинает мигать и продолжает мерцать / мигать во время анимации.Только ближе к самому концу мерцание опускается и к концу полностью прекращается (когда самолет вот-вот закончится).

Если я уменьшу размер самолета до 10% от его размера (с ~ 26000 до ~ 2600), он не будет мерцать вообще.

Я пытался настроить масштаб текстур, безрезультатно.Понижение fps, похоже, тоже не дало эффекта.Есть ли проблемы с рендерингом больших объектов в WebGL?Есть ли работа вокруг этого?

Возможно, он может сделать плоскость статичной и иметь движущуюся текстуру, но это, безусловно, сделает намного больше вещей более хитрыми, особенно когда к ней добавляется больше элементов.

Установка requestAnimationFrame не имел никакого эффекта, и при этом не удаляло видео вспышки.Единственный раз, когда он работает нормально, это когда самолет значительно меньше или когда он приближается к концу.

1 Ответ

1 голос
/ 04 июня 2011

Сцена выглядит хорошо для меня - что происходит, когда вы удаляете Flash?

PS. Поделитесь этим на jsFiddle, если хотите .. http://jsfiddle.net/

Кроме того, что происходит, когда вы используете опцию requestAnimationFrame для цикла рендеринга?

Пример здесь: http://scenejs.wikispaces.com/scene#Starting

...