Используйте методы отсечения окклюзииЭто включено по дефолту и не знаю ни одного проекта, где это кто-то бы отключал.
Используйте статическую пакетную обработку для неподвижных объектов и динамическую пакетную обработку – для движущихсяsrp batcher и resident driver уже давно рекомендуют выключать их, так как dynamic batching тупо медленее, а сортировка по ID у static batching кривая.
> пакетные объекты должны использовать одни и те же материалы Для srp batcher/resident driver это уже не актуально и батчатся все объекты с общим шейдером.
Не используйте прозрачные текстуры, когда в этом нет необходимостиМожет прозрачные шейдера? Причём тут текстуры?
Уменьшите количество проходов, используйте переменные с меньшей точностью, замените сложные математические вычисления предварительно созданными текстурами поиска.Рубрика "как делать НЕ НАДО" 1) количество проходов в urp/hdrp всегда одно, по дизайну. В builtin тоже почти нет случаев, когда это юзается (кроме outline) 2) переменные с меньшей точностью уже давно не актуальны даже для мобилок. Времена fixed/half остались в эпоху mali400. Для настольных платформ компилятор заменяет на float, без исключения, что бы разработчик не написал. В добавок, работа с half доставляет очень много "интересных" багов, например при нормализации числа и т.д., когда точность при возведении в степень/логарифме/экспоненте и обратно падает на порядки. И когда спросишь разработчика "почему ты заменил всё на half и сколько ты сэкономил", никто не скажет, потому что все верят на слово, не проверяя производительность, где-нибудь в renderdoc.
3) Текстуры поиска (lookup) это совет из эпохи 2000 года, когда математика в GPU была медленная. Сейчас математика настолько быстрая (что некоторые команды, например сложение/абсолют/сатурация/ практически бесплатны и занимают 0 тактов), тогда как чтение текстуры из памяти может занимать сотни/тысячи тактов.
и что изменение его положения заставит движок пересчитать весь физический мир зановоГовно совет. Это было исправлено лет 10 назад с выходом unity 5.
Ну и в целом слишком много текста, с которым можно поспорить. Такое актуально было лет 10-15 назад, но не сейчас.
Используйте методы отсечения окклюзииЭто включено по дефолту и не знаю ни одного проекта, где это кто-то бы отключал.
Используйте статическую пакетную обработку для неподвижных объектов и динамическую пакетную обработку – для движущихсяsrp batcher и resident driver уже давно рекомендуют выключать их, так как dynamic batching тупо медленее, а сортировка по ID у static batching кривая.
> пакетные объекты должны использовать одни и те же материалы
Для srp batcher/resident driver это уже не актуально и батчатся все объекты с общим шейдером.
Не используйте прозрачные текстуры, когда в этом нет необходимостиМожет прозрачные шейдера? Причём тут текстуры?
Уменьшите количество проходов, используйте переменные с меньшей точностью, замените сложные математические вычисления предварительно созданными текстурами поиска.Рубрика "как делать НЕ НАДО"
1) количество проходов в urp/hdrp всегда одно, по дизайну. В builtin тоже почти нет случаев, когда это юзается (кроме outline)
2) переменные с меньшей точностью уже давно не актуальны даже для мобилок. Времена fixed/half остались в эпоху mali400. Для настольных платформ компилятор заменяет на float, без исключения, что бы разработчик не написал.
В добавок, работа с half доставляет очень много "интересных" багов, например при нормализации числа и т.д., когда точность при возведении в степень/логарифме/экспоненте и обратно падает на порядки.
И когда спросишь разработчика "почему ты заменил всё на half и сколько ты сэкономил", никто не скажет, потому что все верят на слово, не проверяя производительность, где-нибудь в renderdoc.
3) Текстуры поиска (lookup) это совет из эпохи 2000 года, когда математика в GPU была медленная. Сейчас математика настолько быстрая (что некоторые команды, например сложение/абсолют/сатурация/ практически бесплатны и занимают 0 тактов), тогда как чтение текстуры из памяти может занимать сотни/тысячи тактов.
и что изменение его положения заставит движок пересчитать весь физический мир зановоГовно совет. Это было исправлено лет 10 назад с выходом unity 5.
Ну и в целом слишком много текста, с которым можно поспорить.
Такое актуально было лет 10-15 назад, но не сейчас.
А что сейчас?