Unity переходит на новый унифицированный рендеринг в будущих версиях

Unity переходит на новый унифицированный рендеринг в будущих версиях

Недавно Unity опубликовала свой будущий план развития, который включает в себя новый унифицированный пайплайн (Unified Rendering), который придёт на замену встроенному (built-in), URP и HDRP .

Краткая информация из презентации:

Встроенный рендерер помечен как устаревший в Unity 6, но все еще доступен. Он будет полностью удален в версии Unity 7* (разработчики пока не уверены с наименованием версии)

В Unity 7* появится унифицированный рендерер. Унифицированный рендерер — это не новый рендерер, а рефакторинг URP+HDRP с общей основой. (Полагаю некоторые части проекта urp/hdrp, а так же кодовую базу и шейдера будет проще перенести на новый пайплайн)

Это даст нам единые источники света / материалы / камеры / шейдера, и унифицированный рендерер будет адаптирован относительно оборудования, качества рендеринга и совместимости.

Спустя 7 лет разработки SRP разработчики наконец-то пошли по правильному пути, и я надеюсь что у нас будет общий и единый интерфейс, API, постпроцессинг, шейдерная база (block shaders) и shadergraph 2.0 (анонсирован), render graph и всё остальное.

Полное видео

1
18
1
30 комментариев

Комментарий недоступен

Автор

ура они перевалились на вулкан или что?Откуда вообще вулкан?
Давай на пальцах. Ты новичок юнити, открываешь редактор и тебе предлагают 3 пайплайна (пайплайн это условно ядро движка)
1) builtin
2) urp
3) hdrp
Каждый из них имеет:
Разный код, разное API, разные настройки камеры/освещения/материалов/постэффектов/шейдеров и даже разный интерфейс редактора и документацию.
Это фактически 3 разных движка.
Плюс каждый из них ещё имеет поддержку opengl/vulcan/dx11/dx12/metal/opengles/WebGL/WebGPU

Представь какой был ад. Люди не понимали почему 3 разных движка внутри юнити и почти 99% людей не смогут ответить в чём разница между ними на уровне кода/шейдеров и прочих вещей.
Это настолько сложно и запутанно что ВСЕ разработчики стора говорили им о полном провале. А разработка новых функций была сильно затянута, потому что надо было разрабатывать фичи под 2 разных пайплайна с разным кодом.

Оптимизировать старый было невозможно, потому что он был написан 20 лет назад, там очень много недокументированных фич, багов "по дизайну" и прочих интересных вещей, которые невозможно поменять не словам проекты.

15

Зачем писать новый графический движок если можно оптимизировать старый?

Потому что легаси никуда не деется, если оптимизировать старый

Опенл в отличие от вулкана никак не контролирует выделение памяти, от чего возникают занятные баги
Но да - код вулкана более качественный. Хоть там и 800 строк до рендера треугольника в отличие от 400 строк в опенжл.

Хотя бы потому, что на старом графическом api не сделать многопоточный рендер. Поэтому приходится юзать dx12 и вулкан, а там пайплайн разный относительно OpenGL и dx11 и все приходится переделывать.

Это который переход на новый рендеринг?, как будто дежавю и я виду подобную новость уже 4й раз.

1

У нас есть 3 совершенно разных стандартов рендеринга! Нам нужен один единственный!
Спустя год:
У нас есть 4 стандарта рендеринга!

9