局限

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.

摄像机

  • 目前只支持透视和正交。

灯光

  • 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.

光照探头

  • 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.

间接光照明

  • 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.

阴影

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

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

体积

  • 仅支持单散射。

  • 体积测量只在相机的 "射线" 中呈现。它们不会出现在反射/折射和探测中。

  • 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.

景深

  • 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.

屏幕空间效果

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.

这些限制会产生一些问题:

  • 屏幕空间效果会在屏幕(视图)边框消失。可以使用 过扫描 功能来修复此问题。

  • 屏幕空间效果缺乏深层信息(或者物体的厚度)。这就是为什么大多数效果都有厚度参数来控制如何考虑潜在的相交像素。

  • 这些效果不考虑混合表面。它们不是深度预处理的一部分,不会出现在深度缓冲区中。

  • 作为 阻隔集合 的一部分的对象将不会渲染成屏幕空间效果。

环境光遮蔽

  • 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.

次表面散射 (SSS)

  • 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 is only available in final renders and is not shown in the 3D Viewport and thus Viewport Renders.

材质

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.

着色节点

  • 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).

See also

For a full list of unsupported nodes see Nodes Support.

内存管理

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驱动崩溃,冻结,或终止其它应用程序。所以请小心做出您的请求。

目前没有好办法估计资源是否适合GPU内存,或者GPU是否能成功渲染它们。

CPU渲染

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支持

目前不支持多 GPU 系统。

无头(窗)渲染

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