Производительность WebGL на разных устройствах - PullRequest
3 голосов
/ 09 марта 2012

Какую производительность можно ожидать от WebGL на существующих устройствах? Это несколько открытый вопрос, так как я возьму лучшее, что кто-либо может дать, даже если оно расплывчато, но в идеальном мире я хотел бы знать, какой тип FPS (или типичная длительность кадра, который является более хорошим способом) для измерения производительности) возможны с:

  • 100, 1000 или 10000 вершин с простыми постоянными цветами для фрагмента и движущейся камерой
  • то же самое с затенением, интерполированным из вершин (например, Гуро) (похоже на выше?)
  • то же самое с затенением, вычисленным по фрагменту (например, Блинн-Фонг, вычисленный в шейдере фрагмента) (значительно медленнее?)
  • все вышеперечисленное с добавлением 2d текстур

И, наконец, насколько плохо то, что вы управляете всем из Javascript (если, скажем, вы хотите реализовать простую игру)? Получается ли так, что на практике проблема не в «фоне», а в способности достаточно быстро обновлять состояние, чтобы делать что-нибудь интересное на переднем плане?

1 Ответ

2 голосов
/ 09 марта 2012

У меня есть версия для мобильных устройств моей демонстрации Quake 3, которую я тестировал в последнее время на различных устройствах. Результаты оказались несколько лучше, чем ожидалось, но не впечатляющие:

  • В Opera 12 с Motorola Atrix 2 (я думаю) мы получали ~ 25FPS
  • В Opera 12 с Galaxy Tab я обычно вижу ~ 10 FPS (большой экран / медленный рендеринг)
  • Давно не пробовал Firefox, но в прошлый раз, когда я выглядел, результаты немного ухудшились
  • У меня есть видео о том, как оно работает на iPad 2 с модифицированной версией Safari @ ~ 30FPS

Итак, поехали. Ограниченные данные, но данные тем не менее. Стоит отметить, что это довольно сложная демонстрация, поэтому я не очень разочарован цифрами. Я также отрисовываю сцену с размером экрана 1/2 и масштабированием, чтобы повысить производительность на мобильных устройствах.

Таким образом, я изначально исходил из того, что он работает и, вероятно, отлично подойдет для базового использования (ускоренное 2D?), Но для Inifinity Blade и других. собираемся остаться на некоторое время.

...