Время рендеринга кадра
Абсолютное время, потраченное на небольшой код / этап / и т. Д. это не так важно, так как оптимизация / пакетирование / параллелизм / версия драйвера графического процессора делает практически невозможным точное измерение кода без счетчиков графического процессора. (который можно получить, если вы используете библиотеки libs)
То, что вы можете легко измерить, - это каждое отдельное влияние изменения кода. Вы получите только относительное влияние, и это то, что вам действительно нужно в любом случае. И это только с использованием времени рендеринга кадров.
В идеале вы должны стремиться к тому, чтобы иметь возможность редактировать код шейдера или конвейера во время выполнения и иметь прямой способ проверить влияние на всю типичную сцену, например, просто сравнивая графики между несколькими путями кода. (остерегайтесь статических сцен, в противном случае вы получите высоко оптимизированные статические представления, но с низкой производительностью динамических сцен)
Вот список швейцарских армейских ножей:
- загрузчик состояний сцены
- средство записи сцены (пути камеры / добавления-удаления объектов, текстуры, сетка, ложный ввод и т. Д.) С использованием состояний сцены.
- заставка состояний сцены
- регистратор времени кадра (не только окончательное среднее, но и время рендеринга каждого кадра)
- перезагрузка кода шейдера на лету
- переключатель кодовой дорожки на лету
- считыватель журнала времени кадра + графики + статистические рамки
Обратите внимание, что загрузка / сохранение / запись состояния сцены удобны для множества других вещей, от отладки до отмены / повтора и перезагрузки на лету, не говоря уже о сохранении игр.
Добавьте снимок экрана + разность изображений, и вы также можете тестировать графический код модуля.
Если можете, добавьте это на свой CI-сервер, чтобы огромное влияние кода не осталось незамеченным. (помогает также художникам при регистрации своих активов, не оценивая влияние рендеринга)
Обязательно прочитайте о том, что работа по графическому тестированию CI находится здесь: http://aras -p.info / blog / 2011/06/17 / testing-graphics-code-4-years-позже /