UE5 使用Nanite后,模型会变黑。

原因是目前Nanite支持部分材质。不支持:双面材质、透明、Mask遮罩、贴花等等:

同时,对模型类型(如不支持:骨骼动画、样条)

下面为详细说明:

几何体

Nanite可以在静态网格体和几何体集合上启用。

启用了Nanite的网格体可以搭配以下组件类型使用:

  • 静态网格体
  • 实例化静态网格体
  • 分级实例化静态网格体
  • 几何体集合

变形(Deformation)不支持且不限于以下几点:

  • 骨骼动画
  • 变形目标
  • 材质的世界位置偏移
  • 样条线网格体

此外,Nanite目前还不支持:

  • 自定义深度或模板
  • 在实例上绘制顶点
  • 特指使用编辑器网格体绘制(Mesh Paint)模式进行的逐实例绘制的颜色。
  • 确认 支持在原始网格体上导入的顶点颜色

场景中存在的最大实例数量不大于1600万。这包括场景中的所有流送进来的实例,而不仅仅是为Nanite启用的那些。只有流送进来的实例会被计算在内。

材质

Nanite支持混合模式(Blend Mode)是 不透明(Opaque) 类型的材质。其他材质类型则不被允许,或者对Nanite网格体没有影响。

当检测到不受支持的材质时,系统会指定一个默认材质,并在 输出日志(Output Log) 中放置警告以及附加信息。

以下是Nanite不支持的材质功能:

  • 使用遮罩和半透明的混合模式
  • 延迟贴花
  • 将Nanite网格体用于网格体贴花。
  • Nanite支持将贴花投射到其表面。
  • 线框
  • 双面材质
  • 像素深度偏移
  • 世界位置偏移
  • 自定义逐实例数据

如果在材质中使用以下内容并指定给启用了Nanite的网格体,则会导致网格体显示异常:

  • 顶点插值器节点
  • 自定义UV

渲染

以下渲染功能尚不支持:

  • 使用以下内容的视图相关对象筛选:
  • 使用以下方法进行的场景捕获:
  • 隐藏的组件
  • 隐藏的Actor
  • 仅显示组件
  • 仅显示Actor
  • 最小屏幕半径
  • 距离剔除
  • FPrimitiveSceneProxy::IsShown() 筛选的内容
  • 正向渲染
  • 虚拟现实中的立体渲染
  • 分屏
  • 多重采样抗锯齿(MSAA)
  • 光照通道
  • 针对细节丰富的Nanite网格体的光线追
  • 某些可视化视图模式还不支持显示Nanite网格体