Three.js - 更新godrays光源位置

Three.js - Updating godrays light source position

我正在使用 sprite 作为神光 post 的光源 - 在 Three.js 中处理通道。 但是,当我更新精灵位置时,经过 post 处理的光线停留在其初始位置,导致精灵在没有上帝光线的情况下移动。

我尝试在每一帧初始化后重置光源位置,如下所示:

...    
PostProcessor.godRaysPass.lightSource.position.set(sprite.position.x, sprite.position.y, sprite.position.z)
PostProcessor.composer.render(clock.getDelta());

...    
godRaysPass.lightSource = sprite
PostProcessor.composer.render(clock.getDelta());

但没有任何效果,通过查看 GodRays class,我不确定是否可以在不先修改 class 的情况下更新光源位置,或者我是否遗漏了什么?

好吧,我做了一些挖掘并得出了这个:

移动光源不会造成任何问题,当您改变 sprite 位置时,godrays 会跟随 sprite 光源。 其实问题出在光源在一个旋转的光团里面。 通过从组中移除光源并沿与组相同的轴旋转它,godrays 的行为符合预期。