Skip to content

About JavaFX pipelines

Nikita Shtengauer edited this page Jan 23, 2022 · 4 revisions

JavaFX adapts to each platform by choosing the best way to display content. This is called a pipeline

Currently it only supports 3 pipelines:

  • OpenGL
  • DirectX
  • Software

You can specify JavaFX rendering pipeline by setting following property before initializing:

System.setProperty("prism.order", "es2");
System.setProperty("prism.order", "es2,d3d,sw");

Or in launch parameters:

-Dprism.order=es2

It's good practice to set two or more pipelines - one of them may be not supported on device. Here is a support comparison:

OpenGL (es2) DirectX (d3d) Software (sw)
Windows ❌* ✔️ ✔️
Linux (Unix) ✔️ ✔️
MacOS ✔️ ✔️

* - It may work (see instruction here)

Clone this wiki locally