WebGL / OpenGL: сравнение производительности

В образовательных целях мне нужно сравнить производительность WebGL с OpenGL. У меня есть две эквивалентные программы, написанные на WebGL и OpenGL, теперь мне нужно взять их частоту кадров и сравнить их.

В JavaScript я используюrequestAnimationFrame для анимации, и я заметил, что это заставляет частоту кадров всегда быть в 60 FPS, и это понижается, только если я переключаю вкладку или окно. С другой стороны, если я всегда вызываю функцию рендеринга рекурсивно, окно останавливается по понятным причинам.

Вот как я принимаю FPS:
var stats = new Stats();
stats.domElement.style.position = 'absolute';
stats.domElement.style.left = '450px';
stats.domElement.style.top = '750px';

document.body.appendChild( stats.domElement );

setInterval( function () {

    stats.begin();
    stats.end();
}, 1000 / 60 );


var render= function() {
    requestAnimationFrame(render);
    renderer.render(scene,camera);
}

render();

Теперь проблема, если всегда иметь сцену со скоростью 60 кадров в секунду, состоит в том, что я не могу фактически сравнить ее с частотой кадров OpenGL, поскольку OpenGL перерисовывает сцену только тогда, когда она каким-либо образом модифицирована (например, если я вращаю объект) иglutPostRedisplay() вызывается.

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

Ответы на вопрос(3)

Ваш ответ на вопрос