2017-05-12 2 views
0

Les ombres de ma scène sont faussées en incluant un MasquePasse (même s'il n'y a pas d'ombre projetant des objets ou des lumières dans la scène/cam référencée par le MasquePasse).Désactiver MaskPass Shadows Three.JS

composer.addPass(clearPass); 
composer.addPass(renderPass_background); 
composer.addPass(maskPass1); // this is the problematic line 
composer.addPass(renderPass_foreground); 
composer.addPass(clearMaskPass); 
composer.addPass(outputPass); 

Je crois que mon problème est lié à How to turn off shadows in MaskPass? (je commenter cela, mais ne pas le représentant rue cred/50 ici). Il semble que les tirages d'ombre de tirages supplémentaires sont déclenchés et mon TROIS.ShadowMaterial/shadow quad commence à se remplir.

J'ai déjà édité le code source de three.js mais nous aimerions idéalement nous en tenir au code vanilla si possible. Est-il possible de résoudre l'écriture de carte d'ombre dans le MaskPass sans modifications de code source?

Répondre

0

J'ai corrigé cela il y a quelques semaines dans notre version locale de r86. Je l'ai fait en passant un noShadows bool/argument à WebGLRenderer qui a ramifié les appels de contrôle à WebGLShadowMap.render. Cependant, une mise à jour récente de r87 ramène le problème depuis que WebGLShadowMap a été modifié de façon importante.