来年の夏頃にリリースされる予定のJava SE 6(開発コードMustang)では、開発の目標の1つとしてデスクトップ環境の強化が掲げられている。そのうちのJava2D APIに関する拡張として、Java2DにおけるOpenGLレンダリングの高速化がある。
Mustangでは、Java2DにおけるOpenGLのレンダリングを高速化するためにパイプライン処理の実装が見直される。既存のレンダリングエンジンでは複数スレッドによるレンダリングを並行してネイティブのグラフィックライブラリで処理させるという実装方法が採用されていた。これに対してMustangではシングルスレッドレンダリングを採用、複数のスレッドからのレンダリング要求をパイプラインによって管理し、効率よくグラフィックライブラリに渡すようになる。このシングルスレッドレンダリングの実装はMustangの開発版リリースbuild 27ですでに実装されており、J2SE 5.0の実装に対して大幅なパフォーマンスの向上が確認されている。
一方、JavaプログラムでOpenGLを使うために古くから利用されているAPIとしてJOGL(Java Bindings for OpenGL)がある。JOGLはJSR 231で標準化されているAPIで、JavaコードからOpenGLネイティブライブラリへのバインディングを提供する。JOGLではGLJPanelというOpenGLに対応した軽量コンポーネントを提供しており、これを使用することでSwingアプリケーション内でOpenGLによる3Dグラフィックスの描画が可能になる。しかし、既存の実装ではこのGLJPanelを用いたレンダリングは非常にパフォーマンスが悪いという問題があった。
今月8日に公開されたMustang build 51において、JOGLのGLJPanelから、新しいシングルスレッドレンダリングによる実装を利用するための機能が実装された。これによってGLJPanelのパフォーマンスは大幅に向上し、次のような効果が得られるという。
なお、JOGLを利用したデモプログラムはjogl-demosプロジェクトサイト上で公開されている。
個人向けPCの性能が向上したことで、デスクトップアプリケーションにも充実した表現能力が求められるようになってきた。このことはLG3D(Project Looking Glass)などへの関心の高さにも現れている。今後もMustangにおけるデスクトップJavaへの取り組みに注目していきたい。
| リリースまで1年、Java SE 6"Mustang"の概要を一足早く把握する [2005/8/16] |
| 3つの次期J2EEテクノロジ、メンテナンスドラフトへ [2005/8/29] |
| JavaOneに見るJava EE 5 - Persistence APIがEJBから独立 [2005/6/29] |
| トマトを食べれば痩せられる!? -京大ら、新発見の成分で肥満改善効果を実証 [21:00 2/10] |
| JAXA、液体シリコン中に残存する共有結合を観察 -大口径ウェハの実現に期待 [20:11 2/10] |
| NEDOなど、熱膨張が小さな樹脂複合材料ペレットの量産化に成功 [19:22 2/10] |
| 理研、一般顕微鏡を蛍光顕微鏡に強化できるアダプタを試作して性能を実証 [19:15 2/10] |
| 天の川のブラックホールが小惑星を飲み込んでいる - NASAが発表 [18:08 2/10] |
|
[小栗旬]映画監督役「なんか不思議」 映画「キツツキと雨」初日舞台あいさつ [15:35 2/11] エンタメ |
|
ラズウェル細木サイン入り、土用丑の日カレンダーが抽選で [15:20 2/11] ホビー |
|
【女性編】バレンタインチョコをあげたい芸能人ランキング [15:00 2/11] ライフ |
|
【男性編】バレンタインチョコをもらいたい芸能人ランキング [15:00 2/11] ライフ |
|
[戸田菜穂]第1子女児を出産 「感動でいっぱい」春にも仕事復帰 [14:51 2/11] エンタメ |