Несколько способов повысить производительность при работе с постобработкой в Unity:
- Выбрать подходящий тип рендеринга. habr.com В Unity поддерживаются три типа рендеринга: Deferred (отложенная), Forward (заблаговременная) и Vertex Lit (освещение вертексов). habr.com В каждом из них тени и свет обрабатываются по-разному, и для их обработки требуется разный объём ресурсов ЦП и ГП. habr.com Важно понимать, для какой платформы и для какого оборудования ведётся разработка, чтобы выбрать соответствующий рендерер. habr.com
- Включить расширенный динамический диапазон (HDR). habr.com HDR создаёт буфер изображения, поддерживающий значения вне диапазона от 0 до 1, и выполняет постобработку графических эффектов, таких как размытие и блики. habr.com
- Использовать пакетную обработку (батчинг). habr.com dzen.ru Она позволяет поместить несколько игровых объектов в один вызов рендеринга. habr.com Статическая пакетная обработка предназначена для статических объектов, а динамическая — для движущихся. habr.com
- Использовать заранее просчитанные карты освещения. azurgames.com Целевое устройство, на котором будет запускаться игра, будет загружать карту освещения один раз, вместо того, чтобы пересчитывать её постоянно во время игры. azurgames.com
- Ограничить перерисовку. learn.microsoft.com В Unity можно отобразить перерисовку сцены, переключившись на меню режима отрисовки в верхнем левом углу представления сцены и выбрав параметр Overdraw (Перерисовка). learn.microsoft.com Обычно перерисовка устраняется отбрасыванием объектов до того, как они будут отправлены в GPU. learn.microsoft.com
Для более точной оптимизации производительности рекомендуется использовать профайлеры, например, встроенный в Unity Frame Debugger. azurgames.com