2014-11-25 71 views
0

我得到一個在方法Init「不是GL3實施例外」,當它試圖做分配。造成的:javax.media.opengl.GLException:不是GL3實現

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

} 

我下載了jogamp-all-platforms。我正在使用Eclispe IDE並通過創建新的用戶庫來配置構建路徑。新的用戶庫包含jogamp-all-platforms的所有jar包。我看了類似的問題,但沒有那麼有用。

+0

難道你的硬件不支持OpenGL3?或者你有多個圖形卡,只有一個支持它? – BDL 2014-11-25 15:00:28

+0

@BDL不知道。我試圖找出但是,有人說我使用的是集成顯卡(英特爾3000)可以與OpenGL3使用,但是當我改變GL3到GL2它沒有錯誤。讓我覺得它不能使用。但也許我沒有正確看待 – Rika 2014-11-25 15:45:50

+0

@Rika你有沒有更新你的GPU驅動程序? – PeterT 2014-11-25 15:49:08

回答

0

你應該閱讀this document。在你的情況下,glad.getGL()可能是一個GL4bc實例或一個GL2實例。它取決於您在代碼中使用的GLProfile實例。

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()); 
+0

由於它看起來像我所在的電腦不支持GL3 – Rika 2014-12-02 18:32:36

相關問題