AFrame文本组件无法使用'logarithmicDepthBuffer = true'

时间:2019-06-02 03:28:58

标签: aframe

当我在AFrame渲染器组件中设置logarithmicDepthBuffer: true;时,text组件的所有实例都不再渲染。

要解决此问题,我从场景中删除了所有其他实体,但文本仍未呈现。我还尝试使用包装的<a-text>组件,尝试了alphaTest: 0.5,设置了depthTest: true和设置了sortObjects: false只是看我是否可以获得任何结果,但没有发现任何结果会产生任何结果。

<a-scene renderer="logarithmicDepthBuffer: true;">
    <a-text value="The quick Brown Fox Jumps over the Lazy Dog"></a-text>
</a-scene>

完全不显示文本。控制台中没有渲染产物或错误。

2 个答案:

答案 0 :(得分:0)

尝试在渲染器周围使用[]。

<a-scene [renderer]="logarithmicDepthBuffer: true;">
    <a-text value="The quick Brown Fox Jumps over the Lazy Dog"></a-text>
</a-scene>

答案 1 :(得分:0)

您应该在AFrame github上为此问题。我以前见过有人遇到过这个问题。

作为一种解决方法,我不知道框架的详细信息,但是您可以在文本材料上使用.polygonOffset来避免尝试用logarithmicDepthBuffer抵消的zfighting吗?

logarithmicDepthBuffer是一种很酷的技术,但是启用后,所有与深度交互的着色器都必须意识到这一点,而其中的某些着色器并未考虑在内。

但是,如果您要修复z冲突,则polygonOffset是较为经典的解决方案之一。