网格体贴花

虚幻引擎 4 中网格体贴花功能的总览。

Windows
MacOS
Linux

虚幻引擎 4 现支持 网格体贴花(Mesh Decals),使用户能在单独的表面几何体上使用延迟贴花属性, 在静态和骨架网格体上形成更多细节。因为延迟贴花依赖于投射, 因此多数平面表面未与其被投射的表面对齐时,将出现剪切和扭曲现象。 网格体贴花则可提供不跟随简单投射的贴花,而能够结合包裹边缘的几何体使用, 结合样条使用,最终提升角色的外观效果。

网格体贴花与遮罩材质比较

网格体贴花是半透明混合模式和延迟贴花的混搭,它们并不渲染到深度中, 但会在不透明几何体被渲染后对 GBuffer 或 DBuffer 进行更新。与使用遮罩材质不同的是, EarlyZ 通道不存在开销,不会获得阴影或适当的遮蔽,但可通过权衡获得材质中的柔和过渡。

需要注意的是,网格体贴花和延迟贴花 Actor 之间存在数点不同:

  • 较大的延迟贴花通常执行朝前和朝后的绘制调用,因此绘制调用数更少。

  • 被覆盖的像素更少,扁平朝后的贴花覆盖的像素为 0,因此处理速度更快。

  • 可使用自定义 UV,因此能进行更为复杂的投射。

  • 可使覆盖法线贴图的贴花围绕表面进行包裹(或沿样条进行拉伸)。

 Mesh Decal

 Masked Material

创建内容

创建内容进行使用,因为网格体贴花几何体与模型创建相一致。因为几何体不依赖于投射(如延迟贴花 Actor), 所以几何体只需要停留在需要影响的表面前方。由此可以得出,贴花几何体应该"拥抱"下方的表面,但却无需十分紧密地进行匹配, 因为已经应用了一个较小的深度偏差,足以容纳这个小偏差。此外,在贴花之外伸出一些几何体有助于形成贴花的柔和过渡, 这样的效果无法通过遮罩材质实现。

MeshDecalAuthoring.png

MeshDecalAuthoringComposite.png

基础模型和贴花几何体(单独)

合成模型

创建内容时需要注意的另外一点是网格体贴花结合 LOD 使用时会较为困难,在深度缓冲精度有限时远距离观察同样效果不佳, 因为几何体将如预期相交(或不能匹配)。然而可以修改模型来解决这个问题(多数情况下),或者使用材质中的 世界位置偏差(World Position Offset) 来调整偏差,而无需返回建模应用程序进行处理。

Offset.png

 Offset Value: 0

 Offset Value: -0.6

在此例中,贴花几何体与基础模型十分接近,深度无法容纳偏差。使用较小的负偏差值将几何体拉出一些, 避免其与下方的几何体相交。

注解

  • DBuffer 和非 DBuffer 使用相同的容器。

  • 有许多层重叠时按深度排序可避免穿帮。

  • 并行渲染尚未衔接。如大量使用此功能,将节约一些 CPU 开销。

限制

  • 材质编辑器预览不可见。

  • 美术师无法进行指定排序。

  • 尚未加入切线空间支持。

  • 着色器过度绘制/过度绘制功能缺失。

  • 材质编辑器对基础通道使用进行假设,因此它当前无法显示正确的指令数。

  • 不能对 DepthBias 便利地进行调节。当前版本中用户需要从模型之上的表面使用模型中的偏差,或通过材质中的世界位置偏差进行控制。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback