【问题标题】:renderOrder doesn't work when the scene has transparent objects当场景有透明对象时,renderOrder 不起作用
【发布时间】:2017-11-27 12:59:57
【问题描述】:

我想通过为所有不透明对象设置mesh.renderOrder = 9999material.depthTest = false 来在所有透明对象后面渲染一个不透明对象。但是当我的场景有透明对象时,渲染顺序似乎不起作用。我的不透明对象与透明对象混合在一起。

当所有对象都是不透明的时效果很好。但是当我将某些对象的材质设置为transparent = true 时,渲染顺序似乎不起作用。

我已经设置了renderer.sortObject = true。我不想将其设置为 false,因为我无法控制加载对象的顺序。

有什么办法可以在透明物体之后渲染不透明物体?

【问题讨论】:

  • stackoverflow.com/questions/12666570/…renderOrder 不控制什么是“在前面”或“在上面”——它只控制渲染顺序。
  • @WestLangley 我知道。所以我禁用depthTest 并让它在最后渲染。

标签: three.js


【解决方案1】:

首先渲染三个不透明对象,然后是透明对象,然后可能是精灵。 renderOrder 不影响这一点,它只影响组的节点(不透明排序,然后透明排序)。您可以尝试渲染多个场景,并四处移动。

【讨论】:

    猜你喜欢
    • 2022-09-27
    • 2020-10-14
    • 1970-01-01
    • 1970-01-01
    • 2020-07-12
    • 2016-06-14
    • 2021-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多