2016-04-18 24 views
1

我已經使用官方轉換器(https://github.com/mrdoob/three.js/tree/master/utils/converters/obj)將網格從.obj轉換爲json。網格從一側正確顯示,但從另一側正確顯示。我相信問題是它只有一面,基本上是一架飛機,因此所有的面孔和法線指向一個方向。Three.js:無法顯示網格底部

我該如何解決這個問題?

編輯:我可以添加網格兩次,一次使用material.side = THREE.BackSide;,但加載兩次似乎不是我最好的選擇。

+2

你試過'material.side = THREE.DoubleSide'嗎? – Brakebein

+0

哎唷,我沒有,完全忽略了那個。完美的作品^ _ ^謝謝! –

回答

1

當使用WebGLRenderer時,默認情況下僅渲染三角形圖元的正面。您可以覆蓋通過設置:

material.side = THREE.DoubleSide; // or THREE.BackSide 

前臉由繞組頂點的順序確定。

如果按照逆時針順序(CCW)指定三角形頂點,則正面朝向您;如果按照順時針順序(CW)指定,則前臉將背離你。

此行爲可以通過WebGLRenderer.setFaceCulling()方法更改,但不太可能會發現這種必要。

three.js r.75