質問

And related to that, is there a way to force Java FX to use hardware acceleration and bomb if it is unable to?

役に立ちましたか?

解決

Just found out:

You can run with -Dprism.verbose=true which will print what graphics pipeline it uses. "sw" or "j2d" for software and "d3d" or "es2" for hardware accelerated.

他のヒント

You can also try this hack

@SuppressWarnings("restriction")
static String getCurrentGraphicsPipeline() {
    return com.sun.prism.GraphicsPipeline.getPipeline().getClass().getName();
}

If you get back "com.sun.prism.sw.SWPipeline" then you're using software acceleration. All other values will mean that probably some form of hardware acceleration is being used.

If you are using eclipse as IDE, then you need to pass these VM arguments. You can add these VM arguments in the run Configurations.

Put these arguments there: -Dprism.verbose=true

Have a look at the image for more information

It is possible to set your graphics pipeline using the -Dprism.order=es2 VM-option. You can replace es2 for the desired pipeline (d3d, sw, j2d).

For software renderers, the SCENE 3D feature is disabled.

if(Platform.isSupported(ConditionalFeature.SCENE3D)) {
    // hardware accelerated renderer
} else {
    // software renderer
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top