Ich arbeite mit einem JavaFX-Canvas, das die Bewegung von Shape- und Polyline-Objekten im Laufe der Zeit animiert. Gegenwärtig wird für jeden Rahmen die Position von X und Y für jede Form oder Polylinie in einer Liste nach Bedarf bearbeitet, und das Objekt wird verschoben. Dies ergibt etwa 20-30fpsJavaFX Canvas Effiziente Animationen
Ein früherer Ansatz, den ich versucht habe, löscht einfach die Leinwand in jedem Rahmen und zeichnet jedes Objekt erneut. Keine Listen von Objekten sind gespeichert. Dies ergibt 60fps
Diese zweite Methode scheint eine weit unordentlichere Ansatz noch ergibt sich eine viel bessere Framerate.
Gibt es Best Practices oder empfohlene Methoden zur Animation auf einem JavaFX-Zeichenbereich? Alles sauber und empfohlen, ergibt dennoch eine gute Framerate?
Vielen Dank
Können Sie den Code veröffentlichen? – Oswald
Ich bezweifle, dass Sie die Leinwand in Ihrem ersten Beispiel verwenden. Sie können nichts auf einem JavaFX-Canvas verschieben, indem Sie nur die x/y-Positionen einiger Shapes ändern. Ich schätze, du sprichst hier über den Szenengraphen. Könnten Sie das bitte klären? – mipa