« 愉快な仲間が増えました! | トップページ | [技術ネタ] Java でグラフィックスする場合のお勧め本 »

2009年1月21日 (水)

[技術ネタ] Java JOGL(OpenGL)でのエラーについて(覚書)

久々に技術ネタで失礼いたします。

~・~・~

Java+JOGLを使っていて、

javax.media.opengl.GLException: Error making context current: 6

とか

javax.media.opengl.GLException: Context not current on current thread

というようなエラーが発生して困った場合は、

 

AWT/Swingのイベント処理スレッド(Event Dispatch Thread = EDT)で、例外を catch し忘れた場合にEDTは一旦破棄され、新たに別のスレッドがEDTとして動きだし殆ど場合復帰しますが、JOGLは元のEDTと紐づけされて動いているため上記のエラーが発生するようです。

上記の例外が発生した場合、OpenGL周りの処理を再度初期化してあげれば復活するようです。

もともと例外を発生させない&例外を取りこぼさないのが最善ではあるわけですが。。

1月 21, 2009 Java | このエントリーを含むはてなブックマーク

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/130974/43812689

この記事へのトラックバック一覧です: [技術ネタ] Java JOGL(OpenGL)でのエラーについて(覚書):

コメント

お疲れさまで~す。


興味深い内容で、参考になりました。

Java は得意じゃないですし、エラー・トラップは良く抜けるんで、"他人ごと"には思えないです。

サラッと書いてますが、こういう問題に答えを見つけるには"運"みたいなモノが不可欠ですからね…。


惜しみない賛辞を送りたいと思います。

投稿: awa | 2009/01/22 1:56:16

お久しぶりで~す!

> 惜しみない賛辞を送りたいと思います。

そ、そりゃ、おおげさでっせーcatface
しかしまぁ、長いこと謎だったバグが一つ解決できてホッとしました。。

投稿: nakajo | 2009/01/22 6:54:46

コメントを書く