如何在Three.js中使用延迟照明

How to use Deferred Lighting in Three.js

本文关键字:延迟 照明 js Three      更新时间:2023-09-26

我正在开发的当前Three.js应用程序需要许多独立的灯光,因此可以从延迟的灯光渲染器中受益。

到目前为止,我已经阅读过的关于这一点的参考资料建议使用WebGLDeferredRenderer,但是,当我按照它们的建议定义渲染器对象时:

var renderer = new THREE.WebGLDeferredRenderer({
width: window.innerWidth,
height: window.innerHeight,
scale: 1, antialias: true,
tonemapping: THREE.FilmicOperator, brightness: 2.5 });

并如下调用渲染器来绘制场景:

renderer.render( scene, camera );

我得到一个空白屏幕,而如果我使用标准的WebGL渲染器,我的场景会被正确渲染。

 renderer = new THREE.WebGLRenderer( { antialias: true } );

我似乎在three.js中找不到一个合适的延迟照明的例子。我是不是错过了一个图书馆?我只链接了三个.js。也许这需要一个额外的图书馆?

在我的three.js克隆中,我找不到WebGLDeferredRenderer.js.

的副本

WebGLDeferredRenderer已删除。有关更多信息,请参阅本文,并按照链接访问旧代码。

three.js r.73