Hi Laruent, This sounds promising. I looks forward to taking it for a test drive.
Besides asking other people to help you evaluate it and test it (which you just did), the next step would be for you to file a JEP for javafx/graphics as you did earlier for client-libs/java2d. It seems like something we might consider for JDK 10, once the JDK 10 project is open and we start scoping it.
-- Kevin Laurent Bourgès wrote:
Hi, I am pleased to announce the new MarlinFX project I released 2 days ago (GPL v2): https://github.com/bourgesl/marlin-fx MarlinFX is the JavaFX port of the Marlin renderer (scanline rasterizer integrated in OpenJDK9) aimed to be faster than Open/Native Pisces (notably for very complex paths: merge sort + optimized array copies and cleanup). I tested in on both linux & windows 64bits (server JVM) and it is at least as fast as OpenPisces or faster (javafx shape rasterization is single threaded up to now but marlin scales very well). Of course, it is always faster than native pisces on my machines. For the DemoFX sierpinski test: - native pisces = 130fps - open pisces = 150fps - marlin-fx = 325fps This test renders a very complex path so marlin-fx rocks in hard rendering cases. See https://github.com/chriswhocodes/DemoFX Another DemoFX test (stars): - open pisces: stars = 170 fps - marlin-fx: stars = 259 fps This test case is very simple: see https://www.youtube.com/watch?v=N1rihYA8c2M Setup: laptop zbook-15 (i7 4800 + nvidia Quadro K610M) on ubuntu 16.4 + Oracle JDK 1.8.0_b102 (javafx) - VSYNC: OFF Of course, there is lot of potential improvements in the JavaFX pipeline... (multi-threading, inner/outer strokes...) Finally I made a first step, and more benchmarks or test cases are needed (I could port my MapBench tool) to get some realistic data. Then how to go next, as there is no way to plug in such marlinFX in JavaFX ... Could you have a look at the code (on my github) ? I can make a webrev between openjfx and open jdk 9 if you prefer. Cheers, Laurent