JOGLアプレットが動いたー!!

先日から、(開発中の)JOGLのアプレットがエラーを吐いて止まるようになった。

「jsr-231-1.x-webstart-current/jogl.jar に署名されていないエントリが見つかりました」

というものだが、私のだけではなく、どのサイトのアプレットも止まるようだ。
で、自分で署名すれば動くじゃん、というのが、先日の日記に書いた方法なのだが…。

なんのことはない。もっと良い方法があるんじゃないか。

今回のそもそもの原因は、本家JOGLを利用するときに必要とする、jogl.jar などの署名がなくなった(有効期限が切れた?)ことらしい。

しかし、本家のJOGLは、もうほとんど更新されておらず、今更再署名をするか怪しい。
と思ったら、JOGLプロジェクトが別のところにあったんだな。

http://jogamp.org/

JOGLだけでなく、他にも色々あるので見てみよう。

でも起動するとはいえ、かなりの手順・修正が必要となることは覚悟しよう。

まず、JOGLをビルドするために JDKのディレクトリにコピーした、
jogl.jar
glugen-rt.jar
は削除しよう。

変わりに、以下のところからファイルを持ってきて投入しよう。

http://jogamp.org/deployment/webstart/archive/

私はWindowsなので、

jogl-windows-i586.7z
gluegen-windows-i586.7z

この2つを取得して解凍、jogl.all.jar と gluegen-rt.jar をJDKにコピーした。

アプレットが動けばいいので、アプリケーションは試していないが、
上記に同梱されている、dllなどを使えば、アプリケーションも動くと思う。

さて、次にアプレットを動かすためのJNLPファイルだが、

http://jogamp.org/jogl/doc/deployment/JOGL-DEPLOYMENT.html

ここに書いてある情報を元に、自分のjnlpの設定を変えるだけだ。
元々、sunのwebstartを読むようにしていたところを、こっちに書き換えるだけですむはず。

そして最後が…覚悟が必要な部分。
当然のことながら、パッケージやメソッドが本家と違うわけで。

http://jogamp.org/deployment/jogamp-next/javadoc/jogl/javadoc/

ここを参考に、がりがり書き換えよう。
こちらのJOGLは、本家より格段にグレードアップしており、
OpenGL ESや、OpenGL4なども使えるらしい。
ソース自体もGitで共有されており、誰でも更新できるようだ。

色々使えるようになっているため、どれを使うか、など、細かい指定が増えているので、
プログラムの修正は仕方ないが、その分、進化しているのでやる価値はある。

これらの修正を行った結果、無事にアプレットを起動することが出来たし、
起動時に署名が違うとか、インストールするか?などの、ダイアログもでなくなり、
スムーズに起動するようになったよ。

ただ、BufferedImageをそのままテクスチャとして利用する部分が
すぐに移植できなかったので、そこは修正中しないといけないんだけど。
[PR]
by miries | 2011-10-04 15:14 | ゲームを作る


<< JOGLテクスチャの問題を解決。 3DSウェアのレビュー >>