我正在使用 WebGLDeferredRenderer 来创建一个简单的场景(由一个模拟房间的立方体和两个用于测试阴影的小立方体组成),但我无法显示场景中使用的区域光生成的任何阴影!
在 this demo有 3 个区域光,但它们都不会在单个对象上产生阴影(它们只是照亮“房间”)。
有什么特定的着色器可以用来解决这个问题吗?或者更好...是否有机会在延迟渲染中转换阴影? :)
最佳答案
使用 WebGLDeferredRenderer
进行延迟渲染的 Three.js r.56 目前不支持阴影。
以下是两个示例,其中点光源和聚光灯在 Three.js 中使用延迟渲染来转换阴影,但它们使用的是库的修改版本。
http://alteredqualia.com/three/examples/webgl_deferred_shadowmap.html
http://alteredqualia.com/three/examples/webgl_deferred_shadowmap_point.html
但是,目前还没有区域光的示例。
所以你想要的是可行的,只是尚未支持,并且不支持区域光。
三.js r.56
关于rendering - Three.js - 使用延迟渲染向区域光添加阴影,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15038366/