正如in this question所讨论的那样,通过将-Dprism.verbose=true
作为系统属性传递,可以检测Java FX是否正在使用硬件加速。当我在Windows 2008 Server R2上的Java FX应用程序上执行此操作时,显然会回退到软件渲染:
Prism pipeline init order: d3d j2d
Using t2k for text rasterization
Using dirty region optimizations
Prism pipeline name = com.sun.prism.d3d.D3DPipeline
Loading D3D native library ...
succeeded.
Direct3D initialization failed
Wrong operating system version
(X) Got class = class com.sun.prism.d3d.D3DPipeline
GraphicsPipeline.createPipeline: error initializing pipeline com.sun.prism.d3d.D3DPipeline
*** Fallback to Prism SW pipeline
Prism pipeline name = com.sun.prism.j2d.J2DPipeline
(X) Got class = class com.sun.prism.j2d.J2DPipeline
Initialized prism pipeline: com.sun.prism.j2d.J2DPipeline
我的问题是,是否有可能强制硬件加速,比如愚弄JFX以为我有不同的操作系统?如果我能以某种方式绕过操作系统检查,我希望它可能正常工作。
答案 0 :(得分:4)
这很容易:-Dprism.forceGPU = true
答案 1 :(得分:2)
您还可以定义javaFx尝试使用的顺序,如:-Dprism.order = es2,j2d。 如果您想在Windows上进行OpenGl渲染,则需要它
答案 2 :(得分:1)
看起来你还没有安装DirectX。
Direct3D初始化失败..