java - 无法创建 DirectX D3D 上下文。硬件和软件均不可用

标签 java java-3d

我正在尝试使用 java3D 在 java GUI 中导入一个飞机 3D 模型。它在我的电脑上运行良好。我已经创建了一个 jar 文件,以便它可以使用 netbeans 在任何电脑上运行。当我尝试在其他电脑上运行这个 jar 文件时,它抛出以下错误:

Unable to create DirectX D3D context. Neither Hardware and Software are available. Please update your video card drivers and get the latest DirectX available at http://microsoft.com/directx

造成上述问题的可能原因是什么以及如何解决。

最佳答案

确保您的程序使用 Java3D 1.6.0 而不是 Java3D 1.5.2 或更早版本(似乎是这样)。然后,安装适当的 OpenGL 驱动程序(从 GPU 制造商 NVidia、AMD 或 Intel 的网站获取)。查看那些使用 Java3D 1.6.0 并制作 fat JAR 的教程:

http://jogamp.org/wiki/index.php/Downloading_and_installing_Java3D

http://jogamp.org/wiki/index.php/JogAmp_JAR_File_Handling#Fat-Jar

Java3D 1.5.2 的维护几年前就已停止。 JogAmp 社区仅维护 Java3D 1.6.0,如下所述:

http://jogamp.org/wiki/index.php/Java3D_Overview

http://forum.jogamp.org/JogAmp-s-Java3D-continuation-Java3D-1-6-0-and-later-td4030907.html

与 Java3D 1.5.2 不同,Java3D 1.6.0 不依赖 Direct3D。它专门使用JOGL来访问硬件加速。

您当前的消息表明没有可用的驱动程序或当前驱动程序已过时。尽管如此,我还是不建议您使用过时版本的 Java3D。

关于java - 无法创建 DirectX D3D 上下文。硬件和软件均不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31739904/

相关文章:

java - mvn 不生成所有 Artifact

java - Thread.sleep另一个类

java - 在 Java3D 中选择并移动多个形状

java - 是否可以在窗口模式下在 Nvidia 3D Vision 硬件上运行 Java3D 应用程序?

Java3D模拟作业

java - 在java中使用args执行批处理文件

java - 定义一个key来生成key

java - 如何使用 phantomjs 将多个 web 元素传递到页面

java - Java3d 小程序中的 JPopupMenu 不接收鼠标或键盘输入

java - 为什么当我调用 Canvas3D.repaint() 时 Java3D Canvas 会闪烁