0

我想知道是否有一种方法可以在没有投影的“地面”平面的情况下投影阴影。我想这样做是因为相机可以围绕物体移动,并且看到它穿过地面会很难看。

我将 Three.js 最新版本与 WebGl 渲染器一起使用。

4

2 回答 2

1

这在技术上是不可能的,你可以编写一个在透明平面上渲染阴影的着色器,这样当“相机”穿过平面时你不会注意到它,只有当它穿过阴影本身时才会注意到它。

为此,您可以在像素着色器中的阴影比率和透明黑色或白色之间调整,然后在渲染上下文中设置相应的混合状态。

于 2013-09-02T16:24:18.420 回答
1

是的,这可以通过将 ShadowMaterial 应用于平面几何体来实现。这种材质可以接收阴影并且是完全透明的。因此,您只需将平面几何体定位在场景中的所需位置,您就可以开始了。看看这个。https://threejs.org/docs/#api/en/materials/ShadowMaterial

于 2021-01-08T07:58:36.733 回答