【问题标题】:threejs: rendering multiple scenes in a single webgl rendererthreejs:在单个 webgl 渲染器中渲染多个场景
【发布时间】:2015-07-28 03:02:57
【问题描述】:

我正在尝试按照以下代码将多个场景包含到单个 webgl 渲染器中:

renderer.render(scene1, camera);
renderer.render(scene2, camera);

我面临的问题是,在传递给渲染器的最后一个场景对象中正在绘制,而前一个则没有。我通过交换上面的两行代码来确认它。我是threejs的新手,想知道上述是否可以实现?以及是否可以指导我提供支持示例(如果有)。

谢谢!

【问题讨论】:

标签: 3d three.js renderer scene


【解决方案1】:

您可以在此处找到的最小解决方案:https://jsfiddle.net/mmalex/sqg0d8vx/

var animate = function() {
    requestAnimationFrame(animate);

    renderer.autoClear = true;

    //render scene1
    renderer.render(scene1, camera);

    //prevent canvas from being erased with next .render call
    renderer.autoClear = false;

    //just render scene2 on top of scene1
    renderer.render(scene2, camera);
};

【讨论】:

  • 两个场景中的对象仍然相交。你如何让scene2在scene1之上渲染(所以它就像两层)?
  • 插入“renderer.clearDepth();”在渲染第二个场景之前jsfiddle.net/7g3dkuwq
猜你喜欢
  • 1970-01-01
  • 2015-09-27
  • 1970-01-01
  • 1970-01-01
  • 2015-10-25
  • 2017-03-25
  • 2014-11-08
  • 2010-09-27
  • 2013-01-07
相关资源
最近更新 更多