three.js用于webgl渲染器的canvas元素的dom id

时间:2013-04-05 18:08:47

标签: dom canvas three.js element

我想获得由three.js自动创建的canvas元素的id。

或者,我会同样高兴(或许更是如此)能够在构造过程中传递预先存在的画布元素id。

经过研究,我试过这个:

renderer = new THREE.WebGLRenderer( { canvas: my_canvas } );

没有成功(它来自一个非常古老的版本,但希望它能工作)。也许某些参数语法自2年前发生了变化?

(my_canvas是画布的id,也尝试传递上下文,没有运气)

最后我尝试了:

document.getElementsByTagName('canvas');

什么都没有回复......那是一个令人费解的东西,而且是众所周知的吸管让我在这里发布。

有任何见解,谢谢! (我现在有投票权)

2 个答案:

答案 0 :(得分:17)

var canvas = document.getElementById("canvasID");
renderer = new THREE.WebGLRenderer({ canvas: canvas });

答案 1 :(得分:4)

如果您查看three.js / src / renderers / WebGLRenderer.js(位于文件顶部)的最新版本(r57),您可以看到您实际上可以将canvas参数传递给渲染器。如果你没有通过,那么就为你创造了一个。你可能需要发布一些不起作用的代码或者更好的jsfiddle,这样我们就可以看一下这个问题了。

相关问题