2013-09-10 1 views
0

У меня есть контекст WebGL в веб-приложении, всякий раз, когда он инициализирует его видимым для ~ 50 000 мкс как черный квадрат, прежде чем текстуры (HTML5 appcache) станут видимыми, а фон станет прозрачным.Как вы мягко intiailize контексте WebGL?

Это использование Firefox, который является единственной платформой для моего приложения.

Как я могу избавиться от этого поведения? Если это невозможно; как я могу обойти это?

ответ

0

Вы можете скрыть холст с помощью CSS, прежде чем показывать его. После того, как текстуры загружены, и вы готовы к рендерингу.

Использовать requestAnimFrame для петель, это предотвратит оплату или перерисовку, прежде чем функция обратного вызова вернет курсор выполнения. Поэтому, когда вы готовы к рендерингу, запустите этот цикл, а в первом обратном вызове css создайте свой холст и сделайте webgl. Как только функция будет выполнена - она ​​отобразит холст и рендер в одном единственном переплаве, поэтому не должно появляться мерцание или черные кадры.

Смежные вопросы