Three.js - Billboard-Effekt, Orientierung nach Kameraschwenks beibehalten

8

Ich habe eine Ebenengeometrie, die immer so eingestellt ist, dass sie der Kamera über:

zugewandt ist %Vor%

in der Update-Schleife. Ich verwende OrbitControls , um die Kamera zu steuern. Wenn Sie die Szene drehen oder zoomen, bleibt das Flugzeug erwartungsgemäß der Kamera zugewandt.

Nach dem Schwenken der Szene, während das Flugzeug weiterhin der Kamera zugewandt ist, dreht sich die Kamera jedoch auch, um die Ebene zu drehen, so dass der Text beispielsweise gedreht oder sogar nach oben erscheinen könnte, wenn die Ebene Text enthalten sollte runter zum Betrachter.

Wie kann das Flugzeug gezwungen werden, mit der Kamera ausgerichtet zu bleiben?

Beispiel bei jsFiddle: Ссылка

    
Lee Stemkoski 01.11.2013, 16:45
quelle

2 Antworten

15

Die einfachste Lösung besteht darin, dies einfach zu Ihrer Animationsschleife hinzuzufügen:

%Vor%

Aktualisierte Geige: Ссылка

Alternativ können Sie auch THREE.Sprite

verwenden

BEARBEITEN: Aktualisiert auf three.js r.67

    
WestLangley 01.11.2013, 19:23
quelle
6

Irgendwie scheint es einfach zu sein, bei StackOverflow zu posten und meine Gedanken zu ordnen:)

Eine bessere Lösung (für robusteres Billboarding) scheint zu sein:

%Vor%

Der jsFiddle-Code-Link in der Frage wurde entsprechend aktualisiert; Allerdings gibt es jetzt ein "Zittern" der Kamera / des Flugzeugs beim Drehen der Kamera nach dem Schwenken, also vermute ich, dass diese Lösung immer noch nicht ideal ist und ich würde gerne eine Antwort schätzen und akzeptieren, die diese verbessert.

    
Lee Stemkoski 01.11.2013 17:04
quelle

Tags und Links