Ограничения

Eevee’s goal is to be an interactive render engine. Some features may not be there yet or may be impossible to implement into Eevee’s architecture without compromising performance.

Here is a rather exhaustive list of all the limitations you can expect while working with Eevee.

Камеры (cameras)

  • В настоящее время поддерживаются только перспективные и ортогональные проекции.

Источники освещения (lights)

  • Only 128 active lights can be supported by Eevee in a scene.

  • Only 8 Shadowed sun lights can be supported at the same time.

  • As of now, lights can only have one color and do not support light node trees.

Зонды освещения (light probes)

  • Eevee only supports up to 128 active Reflection Cubemaps.

  • Eevee only supports up to 64 active Irradiance Volumes.

  • Eevee only supports up to 16 active Reflection Planes inside the view frustum.

Отражённое освещение (indirect lighting)

  • Volumetrics don’t receive light from Irradiance Volumes but do receive world’s diffuse lighting.

  • Eevee does not support «specular to diffuse» light bounces nor «specular to specular» light bounces.

  • All specular lighting is turned off during baking.

Тени (shadows)

  • Only 128 active lights can be supported by Eevee in a scene.

  • Only 8 Shadowed sun lights can be supported at the same time.

Объёмы (volumes)

  • Поддерживается только однократное рассеяние.

  • Объемность отрисовывается только для «лучей» камеры. Они не проявляются в отражениях/преломлениях и зондах.

  • Volumetrics don’t receive light from Irradiance Volumes but do receive diffuse lighting from the world.

  • Объёмное затенение работает только в объёмах. Они не будут отбрасывать тени на твёрдые объекты сцены.

  • Объёмное затенение работает только для объёмов внутри усечённой пирамиды вида.

  • Volumetric lighting do not respect the lights shapes. They are treated as point lights.

Глубина резкости (depth of field)

  • Alpha blended surfaces cannot be correctly handled by the post-processing blur, but will be correctly handled by the sample-based method. For this, you need to disable the post-process depth of field by setting the Max Size to 0.

Эффекты экранного пространства (screen space effects)

Eevee is not a ray tracing engine and cannot do ray-triangle intersection. Instead of this, Eevee uses the depth buffer as an approximated scene representation. This reduces the complexity of scene scale effects and enables a higher performance. However, only what is in inside the view can be considered when computing these effects. Also, since it only uses one layer of depth, only the front-most pixel distance is known.

Эти ограничения создают несколько проблем:

  • Эффекты экранного пространства исчезают при достижении границы экрана. Это можно частично исправить, используя функцию «вылета за кадр».

  • Эффектам экранного пространства не хватает информации глубины (или толщины объектов). Вот почему большинство эффектов имеют параметр толщины, позволяющий контролировать, как учитывать потенциальные пересекающиеся пиксели.

  • Смешанные поверхности не учитываются этими эффектами. Они не являются частью предварительного прохода глубины и не отображаются в буфере глубины.

  • Объекты, входящие в состав коллекции удержания, не будут отображаться с эффектами экранного пространства.

Окружающая окклюзия (ambient occlusion)

  • Objects are treated as infinitely thick, producing overshadowing if the Distance is really large.

Screen Space Reflections

  • Only one glossy BSDF can emit screen space reflections.

  • The evaluated BSDF is currently arbitrarily chosen.

  • Screen Space Reflections will reflect transparent objects and objects using Screen Space Refraction but without accurate positioning due to the one layer depth buffer.

Screen Space Refraction

  • Only one refraction event is correctly modeled.

  • Only opaque and alpha hashed materials can be refracted.

Подповерхностное рассеивание (subsurface scattering)

  • Only one BSSRDF can produce screen space subsurface scattering.

  • The evaluated BSSRDF is currently arbitrarily chosen.

  • A maximum of 254 different surfaces can use subsurface scattering.

  • Only scaling is adjustable per pixel. Individual RGB radii are adjustable in the socket default value.

  • Input radiance from each surfaces are not isolated during the blurring, leading to light leaking from surface to surface.

Размытие движения (motion blur)

Motion Blur is only available in final renders and is not shown in the 3D Viewport and thus Viewport Renders.

Материалы (materials)

Refractions

Refraction is faked by sampling the same reflection probe used by the Glossy BSDFs, but using the refracted view direction instead of the reflected view direction. Only the first refraction event is modeled correctly. An approximation of the second refraction event can be used for relatively thin objects using Refraction Depth. Using Screen Space refraction will refract what is visible inside the view, and use the nearest probe if there is no hit.

Screen Space Reflections and Ambient Occlusion are not compatible with Screen Space Refraction; they will be disabled on the surfaces that use it. Surfaces that use Screen Space Refraction will not appear in Screen Space Reflections at the right place. Surfaces that use Screen Space Refraction will not cast Ambient Occlusion onto other surfaces.

Volume Objects

Object volume shaders will affect the whole bounding box of the object. The shape of the volume must be adjusted using procedural texturing inside the shader.

Ноды шейдеров (shader nodes)

  • All BSDF’s are using approximations to achieve realtime performance so there will always be small differences between Cycles and Eevee.

  • Some utility nodes are not yet compatible with Eevee (e.g. Sky Texture node).

См.также

For a full list of unsupported nodes see Nodes Support.

Управление памятью (memory management)

In Eevee, GPU Memory management is done by the GPU driver. In theory, only the needed textures and meshes (now referred as «the resources») for a single draw call (i.e. one object) needs to fit into the GPU memory.

Таким образом, если сцена действительно тяжелая, драйвер будет менять предметы, чтобы убедиться, что все объекты отображаются правильно.

На практике использование слишком большого объёма памяти GPU может привести к сбою, зависанию или завершению работы драйвера GPU. Так что будьте осторожны с тем, что вы запрашиваете.

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

Рендеринг CPU (CPU rendering)

Being a rasterization engine, Eevee only uses the power of the GPU to render. There is no plan to support CPU (software) rendering as it would be very inefficient. CPU power is still needed to handle high scene complexity as the geometry must be prepared by the CPU before rendering each frame.

Поддержка нескольких GPU (multiple GPU support)

В настоящее время не поддерживается несколько систем GPU.

Рендеринг Headless (headless rendering)

There is currently no support for using Eevee on headless systems (i.e. without a Display Manager).