glClearColor () подталкивает iPhone на 27% использования рендера - PullRequest
4 голосов
/ 19 мая 2009

В результате поиска ответа на этот вопрос я натолкнулся на довольно неудобную находку.

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

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

Ожидается ли это?

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

1 Ответ

3 голосов
/ 19 мая 2009

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

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

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

...