Three.js:无法显示网格底部

时间:2016-04-18 12:21:01

标签: javascript three.js

我使用官方转换器(https://github.com/mrdoob/three.js/tree/master/utils/converters/obj)将网格从.obj转换为json。网格从一侧正确显示,但不从另一侧显示。我相信问题在于它只有一面,基本上是一个平面,因此所有的面和它们的法线指向一个方向。

我该如何解决这个问题?

修改:我可以添加两次网格,一次使用material.side = THREE.BackSide;,但加载两次并不是我最好的选择。

1 个答案:

答案 0 :(得分:1)

使用WebGLRenderer时,默认情况下仅呈现三角形图元的正面。您可以通过设置:

来覆盖它
material.side = THREE.DoubleSide; // or THREE.BackSide

正面由顶点的绕线顺序决定。

如果以逆时针顺序(CCW)指定三角形顶点,则正面朝向您;如果以顺时针顺序(CW)指定,正面将背向您。

WebGLRenderer.setFaceCulling()方法可以更改此行为,但您不太可能发现必要。

three.js r.75