将边缘线渲染为SVG-three.js时出现问题
我正在尝试在three.js中渲染的3D对象上绘制边缘线,但是使用SvgRender时这些线无法正确渲染 应用边缘线:将边缘线渲染为SVG-three.js时出现问题,svg,3d,three.js,Svg,3d,Three.js,我正在尝试在three.js中渲染的3D对象上绘制边缘线,但是使用SvgRender时这些线无法正确渲染 应用边缘线: var geo = new THREE.EdgesGeometry( mesh.geometry ); var mat = new THREE.LineBasicMaterial( { color: 0x000000, linewidth: 4 } ); var wireframe = new THREE.LineSegments( geo, mat ); me
var geo = new THREE.EdgesGeometry( mesh.geometry );
var mat = new THREE.LineBasicMaterial( { color: 0x000000, linewidth: 4 } );
var wireframe = new THREE.LineSegments( geo, mat );
mesh.add( wireframe );
(边缘代码取自此)
这与WebGLRenderer的预期效果一样:
但使用SvgRender时,线条会变得模糊:
(注意:由于这个原因,两个版本在Chrome中的渲染都不正确。请使用Firefox查看WebGL版本的准确表示。)您看到的是
SvgRender
的一个限制。没有像WebGLRenderer
那样的深度测试
你能做的最好的事情就是设定
wireframe.renderOrder = 1;
这将强制线框在网格之后渲染。但整个线框将被渲染,呈现出透明网格的外观
three.js r.88您看到的是
svgrender
的一个限制。没有像WebGLRenderer
那样的深度测试
你能做的最好的事情就是设定
wireframe.renderOrder = 1;
这将强制线框在网格之后渲染。但整个线框将被渲染,呈现出透明网格的外观
three.js r.88谢谢你-但是,我甚至无法让这个解决方案起作用。renderOrder没有更改-请参见抱歉,输入错误。修正了。太好了,这很有效(按照你解释的程度)。谢谢你谢谢你-但是,我甚至不能让这个解决方案工作。renderOrder没有更改-请参见抱歉,输入错误。修正了。太好了,这很有效(按照你解释的程度)。非常感谢。