JavaFX performance for complex visualisations
Pedro Duque Vieira
pedro.duquevieira at gmail.com
Mon Dec 17 16:18:39 PST 2012
Just wanted to leave my positive experience with javafx on this subject
I've been porting a previous app that I've also made called Modellus from
swing to javafx, it's a free app you can get it here (the official site is
http://code.google.com/p/modellus5/downloads/list(current version is
The main component - the animator part, is all finished porting to javafx.
In general users (with no concrete stats I'd say it has about 2000 - 5000
users) are happy with the performance, only some corner cases where people
are using old computers or are creating extremely complex simulations is
performance slower than required and slower than the swing version. You can
get and test some simulations from here:
http://fisicanalixa.blogspot.pt/search/label/Modellus (I'm sorry that the
site is in Portuguese but you can use google translate). The videos on that
site are from the older version written in swing, but you can download and
open the examples on the newer javafx Modellus.
There are some simulations there like the "onda longitudinal" (longitudinal
wave) posted on 25 November 2010, that have about 100 objects on screen + a
chart + a table with hundreds of lines and performance is still acceptable.
All this running on a custom made calculation engine that can respond to
user input in real-time allowing the simulations to be interactive.
Note that this is an hobby project of mine that is getting done on my spare
time, so only a few hours a week, and also that I haven't done any
optimization or been worried about performance. And finally that I know
that here and there I can do some simple optimizations and bring
it theoretically to a 10x performance improvement.
On a final note I think that IMHBO (In My Humble Biased Opinion) this app
is significantly more complex than any of the apps mentioned so far (on
this topic) including the port of tower defense that is being done, and
still it performs acceptably.
Pedro Duque Vieira
More information about the openjfx-dev