Возьмите длинный Hidden/Post FX/Uber Shader в плагине постобработки

2D проект (Unity 2018.3.0)

  1. Я загружаю плагин Unity Post Procesing
  2. Добавьте в камеру скрипт https://imgur.com/a/EduR7zw

  3. Настройте только цветовую градацию https://imgur.com/a/1tPOc4r

  4. Попробуйте построить, и это займет много времени, чтобы появиться в строке заряда шейдеров. https://imgur.com/a/IhHBhTH

Любое решение здесь?

2 ответа

Решение
  1. Зайдите в Активы-> Постпроцессинг-> Ресурсы-> Шейдеры
  2. Найдите "Uber" и откройте код.
  3. В первых строках скрипта вы увидите это:

    #pragma multi_compile __ UNITY_COLORSPACE_GAMMA
    #pragma multi_compile __ CHROMATIC_ABERRATION
    #pragma multi_compile __ DEPTH_OF_FIELD DEPTH_OF_FIELD_COC_VIEW
    #pragma multi_compile __ BLOOM BLOOM_LENS_DIRT
    #pragma multi_compile __ COLOR_GRADING COLOR_GRADING_LOG_VIEW
    #pragma multi_compile __ USER_LUT
    #pragma multi_compile __ GRAIN
    #pragma multi_compile __ VIGNETTE_CLASSIC VIGNETTE_MASKED
    #pragma multi_compile __ DITHERING
    
  4. Измените "#pragma" на "#define" и оставайтесь в прагме только в том случае, если вы собираетесь использовать этот процесс

В моем случае я использую только ColorGrading

#define  multi_compile __ UNITY_COLORSPACE_GAMMA
    #define  multi_compile __ CHROMATIC_ABERRATION
    #define  multi_compile __ DEPTH_OF_FIELD DEPTH_OF_FIELD_COC_VIEW
    #define  multi_compile __ BLOOM BLOOM_LENS_DIRT
    #pragma multi_compile __ COLOR_GRADING COLOR_GRADING_LOG_VIEW
    #define  multi_compile __ USER_LUT
    #define  multi_compile __ GRAIN
    #define  multi_compile __ VIGNETTE_CLASSIC VIGNETTE_MASKED
    #define  multi_compile __ DITHERING

Компиляция занимает много времени, потому что в шейдере Uber есть метрический хребет multi_compiles. Количество вариантов шейдера составляет 2^(количество multi_compiles).

Вы можете уменьшить количество вариантов, отредактировав ubershader вручную и удалив несколько строк multi_compile, которые ссылаются на функции, которые вы не используете.

Вот пример некоторых строк, которые вы можете закомментировать.

Другие вопросы по тегам