对特定对象应用后处理步骤

时间:2018-11-13 11:48:02

标签: three.js shader post-processing

基于此example,我尝试创建一个场景,其中有多个对象绽放,而其他对象则没有。

中间的白色立方体应该是白色的(没有花朵)

我对如何获得想要的结果感到困惑。例如,我尝试用白色立方体添加第二个场景,但似乎我没法正确。也许我对不同场景的处理方法是错误的?

实现此行为的“最佳”方法是什么?我总是总是只看到一个场景,只有白色的立方体或四个彩色的立方体。 (下面的示例显示了atm的所有内容)

myFiddle:https://jsfiddle.net/qwertasyx/8qw3ys4z/16/

Clear

1 个答案:

答案 0 :(得分:0)

我曾经有过类似的问题。 this comment的一个例子对我有所帮助。

请注意,在该示例中,有2个场景和2个作曲者(最终的作曲者将前一个作曲者的输出作为输入)

ppoFinal.blendPass.uniforms.tAdd.value = ppoRGB.composer.renderTarget2.texture;
在两个作曲家中都调用

render()

ppoRGB.composer.render();
ppoFinal.composer.render();

此模式允许您有选择地应用后处理效果,并且效果很好。问题在于该方法的可扩展性以及可能的性能。因为当您要应用效果又不同的另一个对象时,需要引入第三场景和第三作曲家。对于过去的小项目,我最终得到了4个场景和4个作曲家...