2009-05-19 3 views
4

В результате поиска ответа this question я столкнулся с довольно неудобным нахождением.glClearColor() нажатие на iPhone при использовании 27% использования

Кажется, что рендеринг только glClearColor() со скоростью 60 кадров в секунду подталкивает iPhone при использовании рендеринга 27%.

Это означает, что почти ничего не делать - только обновление экрана - заставляет iPhone использовать более четверти своей мощности рендеринга.

Этого можно ожидать?

В соответствии с документацией мощность POWERVR должна превышать 270 мегапикселей в секунду. Как unind правильно указано ниже, 480 × 320 при 60 fps равно около 9,2 мегапикселей в секунду, при этом общая производительность составляет около 40 мегапикселей в секунду, что является подозрительным.

ответ

3

Это означает, что вы должны проектировать свой рендеринг, чтобы заполнить все пиксели каждого кадра фактическим контентом, поэтому вам не нужно вообще очищать фреймбуфер. То есть, по крайней мере, классическое «решение» для узкого места очистки: не делайте этого.

В типичных двигателях от первого лица это, например, достигается путем создания skybox и наземной «плоскости», которые всегда охватывают весь видовой экран.

Я не читал подробности подсистемы рендеринга iPhone, но, похоже, это указывает на очень низкую скорость заполнения. 480 × 320 при 60 кадрах в секунду составляет около 9,2 мегапикселей в секунду, при этом общая производительность составляет около 40. Звучит подозрительно.

+0

Он делает. Мне все еще интересно, этого можно ожидать. Тем не менее, даже при рендеринге каждого кадра с фактическим содержимым, это поведение означает разочарование производительности. – Kriem

+0

Мое заключение: да, этого и следовало ожидать. Таким образом, у iPhone низкая скорость заполнения. – Kriem

+0

http://www.glbenchmark.com/phonedetails.jsp?benchmark=pro&D=Apple%20iPhone&testgroup=lowlevel, похоже, согласен. – unwind

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

  • Нет связанных вопросов^_^