问题
In three.js is it possible to apply postprocessing effects only to selected meshes?
For example to have a cube with grain effect while the rest of the scene does not have it. Thank you!
回答1:
Yes. There is a three.js example that shows how to apply postprocessing to selected meshes using masking.
I think that example can be improved for clarity, but you can modify the example like so:
composer4 = new THREE.EffectComposer( renderer, new THREE.WebGLRenderTarget( rtWidth, rtHeight, rtParameters ) );
composer4.addPass( renderScene );
composer4.addPass( renderMask );
composer4.addPass( effectDotScreen );
composer4.addPass( clearMask );
composer4.addPass( effectVignette );
You will get an output like this:
It is a complicated example, so you will have to study it carefully.
three.js.r.77
回答2:
Yes, if you put your object to another scene. But you will face a problem with dept rendering, some object will be always on top. It depends on situation of your scene.
来源:https://stackoverflow.com/questions/37521822/post-processing-to-selected-meshes