我希望在不支持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);
}
有人对此有任何想法吗?
谢谢!