N8python/n8ao

Colors issue with THREE.js r156

Closed this issue · 12 comments

LR17 commented

Hello,
I've been using N8AO with THREE.js r150.
After upgrade to THREE.js r156 the colors are washed out, is there anything that can be done on my side or is it an incompatibility with this release?

Try turning gamma correction off.

LR17 commented

Unfortunately it does not help. Also tried creating my own beauty render target but without success

Try on the pass itself - configuration.gammaCorrection

LR17 commented

That's the property I set, but does not help

Very strange. What is the color space of your render target - could you perhaps share your code?

LR17 commented
this.effectComposer = new THREEX.EffectComposer(this.renderer);
this.effectComposerSSAOPass = new N8AOPass(this.scene, this.perspectiveCamera, width, height);
this.effectComposerSSAOPass.configuration.gammaCorrection = false;
this.effectComposerOutputPass = new THREEX.OutputPass();

this.effectComposer.addPass(this.effectComposerSSAOPass);
this.effectComposer.addPass(this.effectComposerOutputPass);

Is the threeX output pass doing gamma correction where it shouldn't? Which version of n8ao does ThreeX use?

LR17 commented

Hello,
THREEX is an alias to import three/examples/jsm, using three r156 and n8ao 1.6.8
OutputPass is doing tone mapping and colorspace conversion

Strange. I am geniunely not sure what could be causing this. Try it without OutputPass maybe?

This is likely from r155 where in mrdoob/three.js#26371, when rendering to a render target, tone-mapping is internally disabled. You're expected to now include a tonemapping or output pass when using post-processing.

N8AO automatically gamma corrects (this can be disabled)... so it shouldn't be an issue with the library.

Closing due to inactivity. Reopen if the issue is still relevant!