Это окно открывается, когда для параметра showStatistics установлено значение true. Мне интересно, что означают все эти символы? До сих пор я понял, что количество кадров в секунду должно быть как можно выше, а также постоянным. Что означают другие и для чего они полезны?
Что нам говорит окно статистики SceneKit?
comment
Вы правы, что fps должен быть как можно выше. На самом деле должно быть 60. Все время. Опустите ниже 60, и пользователь заметит заикание :-)
- person Fogmeister   schedule 04.07.2015
comment
Ну, черт побери. мой fps на устройстве 58 :D
- person potato   schedule 07.07.2015
Ответы (1)
Вот что вы видите (примечание: я знаю большинство из них по собственному опыту, поэтому не стесняйтесь поправлять меня в комментариях, если я ошибаюсь):
- Красно-серая полоса — это своего рода обзор производительности. Он основан на FPS, и вы должны сделать все, чтобы он оставался зеленым и полным. Сейчас совсем плохо!
GL
говорит вам, какой движок рендеринга вы используете6FPS
— ваша частота кадров. Это означает, сколько раз ваш экран обновляется за одну секунду. Ваша цель должна быть60
(это максимум, что и ожидается от современных игр), но30
приемлемо.- Этот ромб с
6
— это количество узлов, т. е. сколько узлов в вашем графе сцены. 40.3k
— это количество полигонов или количество полигонов в вашей сцене. Это кажется довольно высоким, учитывая, что у вас всего 6 узлов, и может объяснить низкий FPS.- Эта кольцевая диаграмма — это то, на что каждый кадр тратит свое время. В вашем случае вы можете видеть, что большая часть времени тратится на рендеринг (раздел справа объясняет значение каждого цвета)
0.2s
— это время, затрачиваемое на рендеринг каждого кадра. Это напрямую связано с частотой кадров.
person
Moustach
schedule
04.07.2015
хорошо спасибо. Это очень помогло! Вы знаете, что означает гистограмма с зеленым столбцом?
- person potato; 07.07.2015
Ой, забыл об этом... это связано с использованием ядер графического процессора или процессора, но я не могу вспомнить это.
- person Moustach; 07.07.2015
Кажется, я припоминаю, что квадрат — это количество вызовов отрисовки, а не количество узлов.
- person David Rönnqvist; 13.07.2015
В моем приложении кольцо показывает около 80% белого цвета, который помечен как WaitDrawable. Время рендеринга (в середине кольца) составляет около 16 мс, так что все еще приемлемо, но едва ли. Что означает WaitDrawable?
- person drewster; 22.12.2017
@drewster Что означает WaitDrawable
- person Will Boland; 15.03.2018
@WillBoland Не уверен - я думаю, что это было связано с остановкой графического конвейера - не удалось получить MTLDrawable с помощью nextDrawable. Насколько я понимаю, существует небольшое количество MTLDrawables, которые циклически проходят через... то есть, 1 доступен для использования, пока 1 рендерится, поэтому медленная обработка на любом этапе может привести к остановке конвейера отрисовки, что приведет к WaitDrawable. ‹-- Или это может быть совершенно неправильно.
- person drewster; 16.03.2018
@drewster имеет смысл, спасибо. В моей игре проблемы с FPS, так что разберитесь с этим.
- person Will Boland; 16.03.2018
@WillBoland Видео SceneKit от Apple WWDC 2015 с оригинальной демонстрацией Fox рассказывает о том, что вы можете сделать, чтобы улучшить производительность. developer.apple.com/videos/play/wwdc2015/606
- person drewster; 16.03.2018