我正在使用java3d編寫的用java編寫的3d globe應用程序進行渲染。我有一個Windows安裝程序,基本上將文件從開發快照複製到程序文件目錄。它運行從devel的快照很好,但後運行安裝時,它這樣做:幫助在Java3d應用程序中調試GL_VERSION錯誤
Java 3D ERROR : OpenGL 1.2 or better is required (GL_VERSION=1.1)
javax.media.j3d.IllegalRenderingStateException: GL_VERSION
at javax.media.j3d.NativePipeline.createNewContext(Native Method)
at javax.media.j3d.NativePipeline.createNewContext(NativePipeline.java:2736)
at javax.media.j3d.Canvas3D.createNewContext(Canvas3D.java:4895)
at javax.media.j3d.Canvas3D.createNewContext(Canvas3D.java:2421)
at javax.media.j3d.Renderer.doWork(Renderer.java:895)
at javax.media.j3d.J3dThread.run(J3dThread.java:256)
我比較了發展目錄和文件的所有圖書館和罐子都是完全一樣的,並沒有一個是失蹤。這是最奇怪的事情。我已經更新了我的圖形驅動程序(儘管它們顯然是足夠的,因爲從開發快照中運行得很好)。我已經寫了一個簡單的java3d應用程序,它可以製作一個Canvas3D並向它添加一個ColorCube。它運行良好。附:我們的開發快照包括所有的dll,jar和從中運行的jre。我們記錄了所有庫和jvm版本,並且它們與從發佈快照和安裝的應用程序生成的日誌完全相同。我們使用顯式路徑來運行java.exe(.. \ jre \ bin \ java.exe),所以PATH變量不在運行中。
我正在尋找想法來調試這個。我想編寫一個簡單的java應用程序來打印所有的GL屬性,特別是GL_VERSION,試圖展示兩個設置之間的一些可量化的差異。 java3d文檔不包括這些,所有的網絡搜索GL_VERSION問題只是告訴你更新你的驅動程序。
哦,我有Nvidia Quadro FX 3800顯卡。他們其中的兩個。
總結...
Q1:如何爲您的java3d應用程序打印GL_VERSION?第二季度:究竟是怎麼回事?