Three.js的线在Canvas渲染器中无法工作,但在WebGL渲染器中可以。

4

我希望在不支持WebGL的浏览器上使用Canvas渲染器,在其他浏览器上使用WebGL渲染器。 我的代码在使用WebGL渲染器时可以正常工作,但是使用Canvas渲染器时THREE.Line不显示。

//Edges
var edgeMat = new THREE.LineBasicMaterial({
    color: 0x000000,
    opacity: 0.6
} );

for (var edgeId in graph.edgesl) {

    var nodeInId = graph.edgesl[edgeId];
    var nodeOutId = graph.edgesr[edgeId];

    var edgeGeom = new THREE.Geometry();
    edgeGeom.vertices.push(new THREE.Vertex(nodes[nodeInId].position));
    edgeGeom.vertices.push(new THREE.Vertex(nodes[nodeOutId].position));

    var drawingLine = new THREE.Line( edgeGeom , edgeMat );

    //Store In, Out node ID
    drawingLine.inNodeId = nodeInId;
    drawingLine.outNodeId = nodeOutId;

    nodes[nodeInId].edges.push(drawingLine);
    nodes[nodeOutId].edges.push(drawingLine);

    //Meshes additionally need also dynamic flag enabled (to keep internal typed arrays).
    drawingLine.dynamic = true;

    scene.addObject(drawingLine );

    edges.push(drawingLine);

}

有人对此有任何想法吗?

谢谢!

1个回答

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接