Ich möchte 5 Szenen erstellen, so dass die Kamera animiert wird und sich automatisch in der Szene bewegt. Ich möchte, dass die Kamera in jeder Szene 20 Sekunden lang animiert wird und nach 20 Sekunden in die andere Szene wechselt, so dass alles in 100 Sekunden endet. Ich möchte, dass alle Szenen Teil einer einzigen Welt sind. Also, im Grunde möchte ich etwas als Film erstellen. Wie kann ich dies in WebGL erreichen? Ich konnte keine ähnlichen Code-Segmente oder Tutorials online finden. Bitte beachten Sie, dass ich eine rein auf WebGL basierende Lösung benötige, keine andere Bibliothek wie zB three.js. HierWie kann ich mehrere Szenen in einer Welt in WebGL erstellen?
Antwort
Es klingt wie du bist im Grunde für etwas zu fragen, wie diese
WebGL: Zooming to and stopping at object in a scene in WebGL
In Ihrem Fall Sie setzen Bündel von Objekten an verschiedenen Orten der Welt. Sie entscheiden sich für 5 Kamera-Standorte. Sie können zwischen den Standorten unterscheiden.
Stellen Sie sich zum Beispiel vor, jeder dieser Buchstaben sind Gruppen von Objekten in der Welt. C1
durch C5
sind Kameras, die so ausgerichtet, dass sie nur die drei Objekte sehen in der von ihnen
D E F G H I J K L M N O P Q R
\/ \/ \/ \/ \/
C1 C2 C3 C4 C5
Sie müssen nur C1- zwischen Kameras Lerp> C2, C2-> C3, C3> C4 usw. Die Der einfachste Weg ist, die ziemlich standardmäßige lookAt
Funktion zu verwenden, die die meisten 3D Math Bibliotheken haben. lookAt
benötigt 3 Argumente. eye
, target
, up
. Also für jede Kamera, die Sie brauchen, brauchen Sie ein Ziel, Auge, up-Wert. Lerp/Tween diese 3 Werte zwischen 2 Kameras dann füttern sie in lookAt
, um Ihre bewegliche Kamera zu erhalten.
Der einzige Unterschied zwischen Ihren Anforderungen und dem oben verlinkten Beispiel ist das obige Beispiel, in dem die Kamerastandorte während des Betriebs berechnet werden. In Ihrem Fall würden Sie Ihre Kamerastandorte fest codieren.
ist eine Diskussion mit Beispielen für die Animation der Kamera mit Three.js https://github.com/mrdoob/three.js/issues/1689
Ja, dieser benutzt three.js, aber ich brauche eine Lösung, die rein WebGL verwendet. Keine andere Bibliothek. – typos
- 1. Mehrere Szenen in JavaFX
- 2. Erstellen einer Kugel Drehen in WebGL
- 3. Erstellen einer Welt-Matrix
- 4. Wie Szenen in Swift
- 5. R: Erstellen einer Welt-Netzwerkkarte
- 6. iOS SpriteKit Szenen - Mehrere Szenen Auf dem Bildschirm
- 7. Wie kann ich einen WebGL-Shader benchmarken?
- 8. Blenden Szenen in OpenGL
- 9. Wie Debuggen mehrere Szenen gleichzeitig laden in Einheit?
- 10. Cocos2d Wie wechsle ich Szenen
- 11. Wie kann ich mehrere Steuerelemente in Silverlight dynamisch erstellen?
- 12. PHP Wie kann ich mehrere Sitzungen erstellen?
- 13. Warum kann ich keine "Hallo Welt" für glib erstellen?
- 14. Gleiche GUI mehrere Szenen in Unity Spiel - Prefab Canvas?
- 15. Von einer Maya-Szene zu einer WebGL-Animation, wo soll ich anfangen?
- 16. Wie console.log in Webgl-Shadern?
- 17. Modernizr: Testen für WebGL vs WebGL Exentions
- 18. Staat in einer zustandslosen Welt halten
- 19. JavaFX 2.0 Speicherverlust beim Erstellen mehrerer Szenen
- 20. Javascript in einer "isolierten Welt" ausführen (chrome)
- 21. Kann ich mehrere Konfigurationen eines Projekts innerhalb einer Lösungskonfiguration erstellen?
- 22. Ändern Collection Quelle in einer MVVM Welt
- 23. Wie kann ich mehrere Textsegmente in einer WPF-Textbox auswählen?
- 24. Hallo Welt in Prolog
- 25. WebGL Globe - mehrere Datenpunkte von einem Vertex
- 26. Bibliothek zum Laden von 3D-Modell in Webgl
- 27. Szenen dynamisch in JavaFX umschalten
- 28. Wie kann ich diesen WebGL/GLSL-Bild-Downsampling-Shader verbessern?
- 29. Erstellen Sie einen Halbkreis im Szenen-Kit
- 30. Warum kann ich println "Hallo Welt" nicht in Scala schreiben?
Ja, ich brauche so etwas. Vielen Dank. – typos