【问题标题】:Three.js SSAO on a smooth mesh produces flat-shaded results平滑网格上的 Three.js SSAO 产生平面阴影结果
【发布时间】:2018-11-06 00:39:46
【问题描述】:

我正在使用 Three.js r97,在我的场景中,我有一个使用 BufferGeometry 和有效法线的网格。当我设置 material.flatShading = false 时,我看到了一个平滑的网格,但是当我对这个网格 (https://threejs.org/examples/webgl_postprocessing_ssao.html) 应用 SSAO 后处理时,我可以看到网格三角形,就好像它的原始材质 flatShading 设置为 true。我是否缺少可以设置(在深度材质或 SSAO 着色器本身中)的参数以使 SSAO 不显示原始网格三角形,但要平滑? SSAOPass 使用的 depthMaterial 默认具有 flatShading = false ,但在这种情况下似乎并不重要。 请看下面的图片。如果需要,我很乐意提供更多细节,因为我已经在这个问题上停留了好几天,现在甚至不确定它是否可以完成,除了通过使用半径、aoClamp 和 lumInfluence 参数使 SSAO 三角形不那么微妙.

网格 - 平面着色(material.flatShading = true):

网格 - 平滑着色(material.flatShading = false):

网格 - 平滑着色 + SSAO:

【问题讨论】:

    标签: three.js ssao


    【解决方案1】:

    好的,对于任何对此感到疑惑的人 - 看起来 SSAO in Three 自 r75 以来已被破坏:

    https://github.com/mrdoob/three.js/issues/8576

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-20
      • 2017-12-12
      • 2016-11-08
      • 2019-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-28
      相关资源
      最近更新 更多