我正在尝试使用 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/