在单个页面中显示three.js的多个实例

rob*_*rto 4 javascript webgl three.js

我有一个Web应用程序,我需要在不同的容器中显示多个3D对象.目前,我已经实例化了多个three.js渲染器,每个容器一个.但是,我收到此错误消息:"警告:太多活动的WebGL上下文.最旧的上下文将丢失"并且在~10个渲染器之后我无法再打开.这是一个例子

http://brainspell.org/article/24996404

我应该如何在一个网页中拥有多个three.js容器?是否可以使用具有多个场景的单个渲染器并在不同的容器(不同的renderer.domElement)中绘制每个场景?

谢谢!

gma*_*man 5

这在其他地方有所涉及,但最简单的方法是只使用一个three.js实例,使其覆盖整个窗口,将地方持有者div放在你想要绘制的东西,然后element.getClientBoundingRect用于为每个场景设置剪刀和视口你想绘制每个元素

这里有一个例子.

这是该示例源自的StackOverflow中的答案

/sf/answers/2144319271/