【问题标题】:Occluded object with three.js behaving strangely三.js 行为异常的被遮挡对象
【发布时间】:2013-04-13 04:57:39
【问题描述】:

使用 three.js 库,我设法将 3D 对象的遮挡边缘显示为虚线。

而且我希望被其他对象遮挡的边缘表现相同。

通过here 解释的解决方案,它工作正常,除了在一些奇怪的情况下。

这是这种情况的示意图(我使用的是正交相机,所以我们看不到物体之间的距离,因此图片中的文字):

有没有人遇到过类似的情况?

知道为什么在这种情况下它不起作用吗?

也许我的代码中的polygonOffset: true, polygonOffsetFactor: 1, polygonOffsetUnits: 1 部分被滥用了。

或者我的资料中的side: THREE.DoubleSide 可能是这个问题的根源。因为我已经看到它在透明度方面有一些奇怪的行为。

这是我的代码:http://jsfiddle.net/car3v/4/

【问题讨论】:

  • 谢谢它解决了我的问题,至少我在 jsfiddle 中展示了这个特殊的例子。
  • 我把之前的评论变成了答案。

标签: javascript three.js webgl


【解决方案1】:

带有材质depthTest: false 的虚线对象必须在前面,以防它被“普通”对象的网格遮挡。 所以我只是手动设置dashed_object.renderDepth = 9007199254740992;,这是 JavaScript 中可能的最大整数,现在它可以正常工作了。

【讨论】:

    猜你喜欢
    • 2015-05-06
    • 1970-01-01
    • 2020-04-11
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多