引起:javax.media.opengl.GLException:不是GL3实现

时间:2014-11-25 14:53:45

标签: java opengl jogl

当我尝试执行赋值时,我在方法init中得到“Not a GL3 implementation exception”。

void init(GLAutoDrawable glad){
GL3 gl3 = glad.getGL().getGL3();

}

我下载了jogamp-all-platforms。我正在使用Eclispe IDE并通过创建一个新的用户库来配置构建路径。新的用户库中包含了jogamp-all-platforms的所有jar文件。我看了类似的问题,但没有那么有用。

2 个答案:

答案 0 :(得分:0)

您应该阅读this document。在您的情况下,glad.getGL()可能是GL4bc实例或GL2实例。它取决于您在代码中使用的GLProfile实例。

答案 1 :(得分:0)

我发现调试这些事情的最简单方法是获取GLProfile并将其打印为字符串 - 这样,您可以轻松查看您的系统是否实际支持特定版本。您可以使用以下内容执行此操作:

GLProfile glp = GLProfile.get(GLProfile.GL3);
final GLCapabilitiesImmutable glcaps = (GLCapabilitiesImmutable) new GLCapabilities(glp);
final GLCapabilities tGLCapabilities = new GLCapabilities(glp);

System.out.println("System Capabilities:" + glcaps.toString());
System.out.println("Profile Details: " + glp.toString());
System.out.println("Is GL3 Supported?: " + glp.isGL3());