Three.js LineBasicMaterial线宽问题

时间:2015-07-01 07:22:59

标签: three.js webgl

当我使用CanvasRendereer时,LineBasicMaterial的线宽工作正常,但是当我切换到WebGL时,它的不起作用仅在材质中应用默认线宽。我发现了一些关于这个问题的帖子,我知道它不能在Windows中用于ANGLE问题。

这个问题还存在吗?

如果这个问题得到解决,那么如何使用它,或者如果没有解决,那么还有其他方法可以在WebGL中实现线宽吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

WebGL不支持三个js的行宽

请参阅https://threejs.org/docs/index.html#api/geometries/TubeGeometry

  

Windows平台上的WebGL渲染器线宽始终为1   无论设定值如何。

您可以使用TubeGeometry

https://github.com/jjcc1421/Three3DExtras

var line=new three3DExtras.tubeLine([-1,-1,0],[1,1,0],0.02,'#FFF');
var line2=new three3DExtras.tubeLine([-1,0,0],[1,0,0],0.02,'#E3DC1C');
var line3=new three3DExtras.tubeLine([-1,0,1],[1,0,1],0.02,'#B02735');
scene.add(line.getObject3D());
scene.add(line2.getObject3D());
scene.add(line3.getObject3D());