局限
Eevee的目标是成为交互式渲染引擎。在不影响性能的前提下,一些功能还没有加入或不可能整合进Eevee的架构中。
以下是在使用Eevee时你可以预见到的功能限制详尽列表。
相机
目前只支持透视和正交。
灯光
Eevee场景中仅支持最多128个激活灯光。
Only 8 Shadowed sun lights can be supported at the same time.
到目前为止, 灯光只能有一种颜色, 不支持灯光节点组。
光照探头
Eevee仅支持至多128个活动立方体反射贴图。
Eevee仅支持至多64个活动的体积辐射。
在相机视野内,Eevee仅支持最多16个活动的反射平面。
间接光照明
体积不接收体积辐射光但接收世界环境漫射照明。
Eevee既不支持“镜面到漫反射”的光反弹,也不支持“镜面到镜面”的光反弹。
在烘焙过程中,所有镜面照明都会关闭。
阴影
Eevee场景中仅支持最多128个激活灯光。
Only 8 Shadowed sun lights can be supported at the same time.
体积
Only single scattering is supported.
Volumetrics are rendered only for the camera "rays". They don't appear in reflections/refractions and probes.
体积不接收体积辐射光但接收世界环境漫射照明。
体积阴影仅在体积物体上有效。它们不能在场景实物上投射阴影。
仅在视锥体(视野)中的体积会有阴影。
体积光照明不支持设置灯光形状。它们都被视为点光。
景深
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不是光线追踪引擎,不会计算全部的光线反弹。而是使用深度缓冲区作为近似场景表示,这会降低场景缩放效果的复杂性并实现了更高的性能。 eevee计算那些效果时,仅计算视图范围的内容。另外它只利用一层深度,因此仅知道最前面的像素距离。
这些限制会产生一些问题:
屏幕空间效果会在屏幕(视图)边框消失。可以使用 过扫描 功能来修复此问题。
屏幕空间效果缺乏深层信息(或者物体的厚度)。这就是为什么大多数效果都有厚度参数来控制如何考虑潜在的相交像素。
这些效果不考虑混合表面。 它们不是深度预处理的一部分,不会出现在深度缓冲区中。
Objects that a part of Holdout Collections will not be rendered with screen space effects.
环境光遮蔽
Objects are treated as infinitely thick, producing overshadowing if the Distance is really large.
屏幕空间反射
Only one glossy BSDF can emit screen space reflections.
目前任意选择评估的BSDF。
屏幕空间反射将使用屏幕空间折射反射透明对象和对象,但由于单层深度缓冲区而没有精确定位。
屏幕空间折射
Only one refraction event is correctly modeled.
只能折射不透明或者alpha hashed材质的物体。
次表面散射 (SSS)
只有一个BSSRDF可以产生屏幕空间次表面散射。
目前任意选择评估的BSSRDF。
最多254个次表面散射材质的物体。
每个像素只能调整缩放比例。 单个RGB半径可在插槽默认值中调整。
在模糊期间,每个表面的输入辐射不被隔离,导致光从表面泄漏到表面。
动态模糊
材质
- 折射
通过对光泽 BSDF使用的相同反射探头进行采样,但使用折射视图方向而不是反射视图方向来折射。 只有第一次折射事件才是精确的。 使用折射深度可以将第二折射事件的近似用于相对较薄的物体。 使用屏幕空间折射将折射视图内部可见的内容,并在没有命中时使用最近的探测器。
屏幕空间反射和环境光屏蔽(AO)与屏幕空间折射不兼容; 它们将在使用它的表面上禁用。 使用屏幕空间折射的曲面不会出现在屏幕空间反射的反射中。 使用屏幕空间折射的曲面不会将环境光屏蔽(AO)投射到其他曲面上。
- 体积物体
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.
着色节点
所有BSDF都使用近似值来实现实时性能,因此Cycles和Eevee之间总会存在细微差别。
某些实用节点尚未与Eevee兼容(例如 天空贴图节点)。
See also
不支持节点完整列表 节点支持.
内存管理
目前为止Eevee使用OpenGL,而且 GPU 内存处理由OpenGL驱动实现。理论上,只需要贴图和网格(现在称为“资源”)作为一次(例如 一个物体)合理的GPU内存的请求。
如果场景非常大,驱动会交换切换物体进出来保证所有物体被正确渲染。
在实践中,使用太多的GPU内存会导致GPU驱动崩溃,冻结,或终止其它应用程序。所以请小心做出您的请求。
目前没有好办法估计资源是否适合GPU内存,或者GPU是否能成功渲染它们。
CPU渲染
作为光栅化引擎,Eevee仅使用 GPU 的功能进行渲染。不打算支持 CPU 渲染,因为效率太低。但工作中仍然需要CPU来处理场景的复杂任务,因为在渲染每个帧之前必须由CPU准备几何数据。
多GPU支持
目前不支持多 GPU 系统。
无头(窗)渲染
目前Eevee不支持无头渲染系统(例如没有显示管理器)。