ThreeJS中的淡入淡出场景从101> 107升级

时间:2019-07-31 09:54:37

标签: javascript three.js

我发现费尔南多·塞拉诺(Fernando Serrano)的an example讲述了在ThreeJS中如何淡入淡出2个场景。 Here is使用ThreeJS 101进行了稍微修改,可以正常工作的JSFiddle版本。现在我要解决的问题...

将ThreeJS升级到最新版本(107)时,WebGLRenderer进行了一些更改。 renderTargetforceClear参数已从其render函数中删除。我尝试进行update my JSFiddle,但似乎一切正常,但是控制台显示很多错误!

我似乎无法弄清楚问题出在哪里。顺序或设置渲染目标并清除渲染器是否重要?我可以为两个渲染目标使用相同的渲染器吗?

如果有人可以向我解释我在做什么错,那将是很棒的事情!

1 个答案:

答案 0 :(得分:1)

  

我似乎无法弄清楚问题出在哪里。顺序或设置渲染目标并清除渲染器重要吗?

是的。将WebGLRenderer视为状态机。首先,您必须指定是否通过.setRenderTarget()使用渲染目标。在下一步中,您可以执行可选的清除和相应的渲染。

在第103行中,尽管renderer.setRenderTarget(this.fbo)是正确的,但是您仍设置了renderer.setRenderTarget(null)。您也可以使用官方的example作为代码模板。我从那里开始采用修复程序。

  

我可以为两个渲染目标使用相同的渲染器吗?

是的,没问题。

固定的小提琴:https://jsfiddle.net/3b498ozw/

three.js R107