我正在开发一个 JavaFX 8 项目,该项目严重依赖过渡和其他效果。我的目标平台是一个准系统,配备运行 Debian Wheezy 的 Intel Atom CPU。 我一整天都在寻找答案,但我无法启用 JavaFX OpenGL 渲染。
一些输出:
trr@m:~/$ java -Dprism.verbose=true -jar app.jar
Prism pipeline init order: es2 sw
...
Prism pipeline name = com.sun.prism.es2.ES2Pipeline
Loading ES2 native library ... prism_es2
succeeded.
GLFactory using com.sun.prism.es2.X11GLFactory
Prism-ES2 Error : GL_VERSION (major.minor) = 1.4
(X) Got class = class com.sun.prism.es2.ES2Pipeline
GraphicsPipeline.createPipeline: error initializing pipeline com.sun.prism.es2.ES2Pipeline
*** Fallback to Prism SW pipeline
Prism pipeline name = com.sun.prism.sw.SWPipeline
(X) Got class = class com.sun.prism.sw.SWPipeline
Initialized prism pipeline: com.sun.prism.sw.SWPipeline
trr@m:~/$ lspci -v -s 00:02.0
00:02.0 VGA compatible controller: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (rev 02) (prog-if 00 [VGA controller])
Subsystem: Foxconn International, Inc. Device 0d77
...
Kernel driver in use: i915
trr@m:~/$ glxinfo
...
direct rendering: Yes
...
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Intel(R) IGD
OpenGL version string: 1.4 Mesa 8.0.5
glxgears 始终显示 ~59FPS。
感谢所有帮助。
最佳答案
我在 eeePC 901 上使用 JavaFX。 我收到非常慢的性能和类似的错误消息:
Prism pipeline init order: es2 sw
Using platform text rasterizer
Using java-based Pisces rasterizer
Using dirty region optimizations
Not using texture mask for primitives
Not forcing power of 2 sizes for textures
Using hardware CLAMP_TO_ZERO mode
Opting in for HiDPI pixel scaling
Prism pipeline name = com.sun.prism.es2.ES2Pipeline
Loading ES2 native library ... prism_es2
succeeded.
GLFactory using com.sun.prism.es2.X11GLFactory
Prism-ES2 Error : GL_VERSION (major.minor) = 1.4
(X) Got class = class com.sun.prism.es2.ES2Pipeline
GraphicsPipeline.createPipeline: error initializing pipeline com.sun.prism.es2.ES2Pipeline
*** Fallback to Prism SW pipeline
Prism pipeline name = com.sun.prism.sw.SWPipeline
(X) Got class = class com.sun.prism.sw.SWPipeline
Initialized prism pipeline: com.sun.prism.sw.SWPipeline
vsync: true vpipe: false
lspci 正在提供:
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GME Express Integrated Graphics Controller [8086:27ae] (rev 03)
Subsystem: ASUSTeK Computer Inc. Device [1043:830f]
Kernel driver IN USE: i915
Kernel modules: i915
00:02.1 Display controller [0380]: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller [8086:27a6] (rev 03)
Subsystem: ASUSTeK Computer Inc. Device [1043:830f]
所以我也使用 i915 驱动程序。
关于在 Debian Wheezy 上初始化 ES2Pipeline 时发生 JavaFX 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22865719/