当前位置: 首页 > 面试题库 >

如何在JavaFX中禁用或绕过硬件图形加速(Prism)

郦磊
2023-03-14
问题内容

操作系统:OSX Mountain Lion。

系统:Virtual BOX 4.2.6。

的Java:1.7.0.40-ea-b34

我想为我的JAVAFX应用程序禁用硬件加速,因为我的系统(mac)没有硬件加速。因此,当没有硬件加速时,执行JAVAFX App时会出现致命错误。该错误与“
Prism Engine管道”有关,并且在Java尝试执行openGL本机库时发生。所以我想禁用棱镜。

我看到有一些控制棱镜行为的vm args,例如:Dprism.forceGPU = true;

是否有上述禁止棱镜或openGL请求的功能?

致命错误(与openGl相关的代码)

Stack: [0x000000016c8f9000,0x000000016c9f9000], sp=0x000000016c9f7f40, free space=1019k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libobjc.A.dylib+0x639f] objc_msgSend_fixup+0x5f
C [AppKit+0x28134c] -[NSOpenGLContext initWithFormat:shareContext:]+0xac
C [libprism-es2.dylib+0x4e9f] createContext+0x1b3
C [libprism-es2.dylib+0x4729] Java_com_sun_prism_es2_gl_mac_MacGLFactory_nInitialize+0xa2
j com.sun.prism.es2.gl.mac.MacGLFactory.nInitialize([I)J+0
j com.sun.prism.es2.gl.mac.MacGLFactory.initialize(Ljava/lang/Class;Lcom/sun/prism/es2/gl/GLPixelFormat$Attributes;)Z+73
j com.sun.prism.es2.ES2Pipeline.<clinit>()V+54

问题答案:

看这个论坛:https :
//forums.oracle.com/message/11018975

将此添加到您的Java执行中:

-Dprism.order=j2d

这应该够了吧。



 类似资料:
  • 问题内容: 我正在使用以下网址: 正如我在“ myserver.com”的“ access.log”中看到的那样,使用了客户端的系统代理。但是我想完全禁止使用代理。 问题答案: 我目前了解的 完全 禁用代理的唯一方法是: 建立会议 设置于 使用该会话创建您的请求 import requests session = requests.Session() session.trust_env = Fal

  • 问题内容: 我一直在花一些时间研究Java的硬件加速功能,但我仍然有些困惑,因为我在网上直接找到的任何站点都没有明确回答我所遇到的一些问题。因此,这是我对Java硬件加速的疑问: 1)在Eclipse版本3.6.0中,具有Mac OS X的最新Java更新(我认为是1.6u10),默认情况下是否启用硬件加速?我在某处读过 应该指示是否启用了硬件加速,并且当在我的主Canvas实例上运行以进行绘制时

  • 这简直快把我逼疯了,我找不到任何帮助。对于模拟器,我还是个新手,对于Android Studio更是如此。我的问题是:我安装了Android Studio。下载了SDK更新,包括HAXM一个,并建立了我自己的AVD。在尝试启动我的AVD或者甚至是已经存在的starter AVD时,我得到一个错误,说明“emulator:error:x86仿真当前需要硬件加速!” 有没有人对一个完整的Android

  • 硬重装或硬刷新(例如,Chrome中的移位重装)似乎绕过了服务辅助角色。 例如,加载一个服务人员控制的页面,如https://airhorner.com/或https://wiki-offline.jakearchibald.com/,在开发工具中将网络设置为“离线”,然后重新加载页面会导致一个破碎的“没有互联网连接”页面。正常的重新加载会显示缓存的页面。) 有没有办法防止这种情况发生,或者在设备

  • 我正在JavaFX 2.2中动态创建一个StocckedBarChart(见下面的代码片段)我想让每个条形图充当一个超链接,这样当悬停在它上面时它会发光,当单击它时它会打开一个详细信息屏幕,其中包含有关用于绘制图表中相关条形图的源数据的更多信息。 我想做这样的事情:

  • 我试着绕着它的中心旋转一个矩形。使用GraphicsContext ie gc将旋转绘制到画布上。这是我的绘图代码。 这会将矩形移动到其中心,然后围绕其左上角点旋转矩形。我试着把两边的长度和宽度减半,但那只会让它飞得到处都是。我数学不好也许这里有更好的人能告诉我我做错了什么。 如果需要的话,我还存储了矩形的所有四个点(角)。 谢了乔