2017-04-25 79 views
0

我在浏览器中用three.js显示鞋子模型。当我将脚后跟设置为半透明材质时,出现问题。我已经在项目中使用了orbitControls,当我旋转到某个角度时,半透明材质显示黑斑和三角形?如何消除透明材料中的黑暗区域?

enter image description here

我希望它看起来像这样:

我怎样才能改变材料性能的材料设置为一个纯粹的颜色?我已经设置了这样的材质道具

new THREE.MeshPhongMaterial({ 
    color: 0xff0000, 
    specular: materialParams.material3d.specular, 
    shininess: materialParams.material3d.shininess, 
    transparent: true, 
    opacity: materialParams.material3d.opacity,  
    map: that.textureLoader.load(this.sourceUrl + 
    materialParams.material3d.icon), 
    side: THREE.DoubleSide, 
    blending: THREE["NormalBlending"] 

}) 
+0

检查本文[这里](https://aboosbox.wordpress.com/2017/04/17/three-js-for-absolute-beginners/)您可能得到解决! –

+0

请显示您正在谈论的那个黑点的截图。 – hidefromkgb

+0

谢谢,我上传了一个错误的shotScreen ...,现在我再次在开始链接上载它 – feixiangsnail

回答

0

半透明面以它们在缓冲区中出现的顺序呈现。这会导致半透明材料中的伪像或“黑点”。

由于您的“脚跟”的几何形状似乎是凸的,一个简单的办法可能是令人满意的是使只有前表面:

mesh.material.side = THREE.FrontSide; 

当材料是透明的,几何形状是更复杂的,您可能需要尝试其他解决方案。 this answer解释了一种替代方法;

three.js所r.85

+0

请你能帮助我[这个问题](http://stackoverflow.com/questions/43693337/modify-three-js-pointerlock-controls-example-to-make-it-fly)? – neoDev