TGViewer
GameDev: разработка игр GameDev: разработка игр @make_game · 7.64K subscribers
Post #2107 320
Как собрать toon-шейдер для VR в Unity URP

В Shmackle VR базовые Unlit-шейдеры давали плоскую картинку и нестабильные 70 FPS на Quest 2. Автор собрал систему из трёх частей: ступенчатого света, экранных контуров и краевого освещения, которое отделяет силуэт от фона.

Свет квантуется по скалярному произведению нормали и направления на источник: плавный градиент превращается в несколько уровней. Для дальних объектов расчёт переносится с пикселей на вершины по уровню детализации. Контуры ищутся фильтром Собеля в буферах глубины и нормалей, поэтому отдельная геометрия не нужна.

В проекте автора частота закрепилась на 90 FPS, вызовы отрисовки сократились с 340+ до 180, а варианты шейдера с 12 до 4. Это ориентир, а не гарантия: архитектуру и код прохода контуров стоит проверять профилированием прямо на целевом шлеме.
More from @make_game
  1. Oct 2, 2026Как разделить управление меню и персонажем в Unity Input System Если меню и игровой процес…
  2. Oct 2, 2026Как нейросеть восстанавливает свет от объектов за пределами кадра Экранные методы глобальн…
  3. Oct 1, 2026Как теория групп помогает учесть повороты и отражения зданий В Factorio здания на квадратн…
  4. Oct 1, 2026Как GPU Work Graphs делят поверхности Безье без трещин Аппаратная тесселяция задаёт плотно…
  5. Oct 1, 2026Как сгладить сетевую физику интерполяцией снимков Передающая сторона отправляет состояния…
  6. Sep 30, 2026Как разгрузить CPU в Unity при тысячах объектов Сначала профилируйте: скачки времени кадра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →