Eevee – новый вьюпорт

Теперь, когда вьюпорт Blender использует OpenGL 2, открыта дорога для разного рода инноваций. Вьюпорт уже сейчас поддерживает интересные эффекты вроде SSAO, но разработчики на этом не остановились – в рамках ветки Blender 2.8x полным ходом идет реализация нового движка фотореалистического рендеринга в реальном времени Eevee, о котором хочется рассказать подробнее.

Название Eevee расшифровывается как «Extra Easy Virtual Environment Engine». Движок будет основан на физически обоснованном рендеринге (Physically Based Rendering, PBR) – мы уже неоднократно писали об этой технологии, которая сейчас является де-факто стандартом индустрии CG. Чего же ожидать от Eevee и какие возможности он принесет простым пользователям?

В первую очередь, будет пересмотрена система освещения – добавление на сцену новых источников света не будет приводить к тормозам. Информация об источниках света будет передаваться на GPU при помощи UBO (Uniform Buffer Object) – то есть, динамических массивов, что позволит избежать перекомпиляции шейдеров.

Будет реализована концепция убер-шейдеров – то есть, универсальных шейдеров, из которых можно выкрутить любой материал путем изменения параметров. В качестве образца разработчики взяли PBR-материалы из Unreal Engine 4. Предполагается, что убер-шейдер будет выходным узлом для материалов в композиторе, причем совместимым с Cycles – любую Cycles-сцену можно будет легко адаптировать под рендеринг в Eevee. Что будет поддерживать убер-шейдер? Во-первых, освещение на основе изображений (Image Based Lighting) – то есть, HDR-карты окружения, как в Cycles. Загружаемые из внешних файлов световые зонды будут дополняться внутренними – для расчета непрямого освещения от объектов сцены. Для максимальной отзывчивости генерирование внутренних зондов будет выполняться в фоновом режиме, пока вьюпорт рендерит упрощенную картинку – например, только с рассеянным непрямым освещением.

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

Eevee будет поддерживать подповерхностное рассеивание (SSS), эффект многослойных материалов (Clear Coat), рендеринг объемов (Volumetric) – а также полный набор стандартных возможностей: размытие при движении, DoF, антиалиасинг и т.д. Не исключена поддержка отражений в экранном пространстве (Screen Space Reflection). В принципе, Eevee в будущем может заменить собой Blender Internal – будет реализована частичная совместимость с материалами BI.

А теперь – ложка дегтя. Все эти возможности будут требовать достаточно мощной видеокарты – для работы Eevee потребуется поддержка OpenGL 3.2.

Blender перестает быть подходящим решением для работы с 3D-графикой на слабых машинах, превращаясь в инструмент для профессиональных рабочих станций. С одной стороны, это, конечно, неплохо – это означает, что Blender используется для серьезных задач и востребован в коммерческой среде. Но с другой – уже не будет того былого кайфа, когда вы могли взять старенький нетбук, смоделировать какую-нибудь несложную сцену и тут же ее отрендерить. Если вам от 3D-пакета не нужны такие навороты, как PBR во вьюпорте или GPU-рендеринг, то вскоре придется искать альтернативу – например, взглянуть в сторону Wings 3D. Смешно сказать – когда-то многие из нас переходили с 3ds Max на Blender именно из-за его легковесности и низким системным требованиям, а теперь снова ищем что-то полегче...

Copyright © 2008-2026 Тимур Гафаров и соавторы. Доступно по СС BY-NC-SA 3.0.