当我使用CanvasRendereer时,LineBasicMaterial的线宽度工作得很好,但当我切换到WebGL时,它就不起作用了,只有材质中的默认线宽度被应用。我发现了一些关于这个问题的帖子,并且我得到一个想法,即在Windows上由于ANGLE问题而无法工作。
这个问题还存在吗?
如果这个问题已经解决了,那么如何使用它,如果没有解决,那么是否有其他方法在WebGL中实现线宽度?
谢谢。
当我使用CanvasRendereer时,LineBasicMaterial的线宽度工作得很好,但当我切换到WebGL时,它就不起作用了,只有材质中的默认线宽度被应用。我发现了一些关于这个问题的帖子,并且我得到一个想法,即在Windows上由于ANGLE问题而无法工作。
这个问题还存在吗?
如果这个问题已经解决了,那么如何使用它,如果没有解决,那么是否有其他方法在WebGL中实现线宽度?
谢谢。
WebGL不支持Three.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());