lösen Ich learing three.js und ich konfrontiert ein Z-Bekämpfung Problem.Wie kann ich Z-Bekämpfung mit Three.js
Es gibt zwei Flugzeug-Objekt, ist blau und die andere ist rosa. Und Ich habe die Positionen die fließenden Codes:
plane1.position.set(0,0,0.0001);
plane2.position.set(0,0,0);
Gibt es eine Lösung in three.js alle z-Kampf Problem in einer großen Szene zu beheben?
Ich stelle dieses Problem, weil ich arbeite auf ein BIM (Building Information Model, das .ifc-Format ist) im Web rendern. Und das Modell selbst hat so viele Gesichter, die so eng miteinander verbunden sind. Und es verursachen so viel z Bekämpfung Probleme wie Sie sehen können:
Ist three.js diese Art von Verfahren bereitstellen, um dieses Problem zu lösen, so dass ich diese z Bekämpfung Problem umgehen kann nur mit ein paar Code?
Nur wenige einfache Lösungen: (0) Legen Sie Ihre Objekte nicht, die nahe beieinander und/oder (1) Erhöhung [Genauigkeit der Tiefenpuffer] (https://www.opengl.org/wiki/Depth_Buffer_Precision) UND/ODER (2) Skaliere deine gesamte Welt, so dass du Flugzeuge weiter auseinander bewegen kannst, während du die Entfernungen visuell gleich bleibst – Drop
In der Tat wäre die erste Frage: Warum versuche ich? um diese Flugzeuge so nahe zu bringen? Was erwarten Sie als Ergebnis? – Drop
Für große Welten: (3) Verwenden Sie (1-2) + für sehr weit entfernte Objekte (jenseits eines Schwellenpositionswertes), anstatt die Position weiter zu vergrößern, skalieren Sie Objekte einfach herunter. Sie werden Gefühl der Entfernung ohne Probleme mit der Tiefe bekommen. – Drop