2016-06-20 7 views
0

Ich habe eine Hausszene, wo es eine Anzahl von Wänden hat, wenn ich Richtstrahler hinzufügen oder Strahler das Licht durchdringt Wände unabhängig von der Richtung des Lichts positioniert.Wie kann ich Mache mein Licht nicht an der Wand vorbei?Licht betrifft alle Objekte und durch Wände in three.js

+0

Haben Sie ein Material für Ihre Wand eingestellt und eine Transparenz für Ihr Material 'material.transparent = false' gesetzt? – grateful

Antwort

1

Das ist kein Weg, wie das WebGL 3D-Rendering funktioniert. Alle Materialien werden durch Licht beeinträchtigt. Sie können einen Schatten rendern: http://learningthreejs.com/blog/2012/01/20/casting-shadows/ aber das bedeutet, dass das Licht auf den Meshes immer gerendert wird und danach wird ein Schatten gerendert. Das heißt, wenn Sie ein meshPhong Material mit einem hohen shininess haben, wird es durch den Schatten sichtbar und verdunkelt, was physikalisch in Wirklichkeit nicht möglich ist. enter image description here