Java OpenGL
Java OpenGL (JOGL) はJavaプラットフォーム上でOpenGLを使った3DCGソフトウェアを作成するための、オープンソースライブラリ�…
|
| |
| 開発元 | JogAmp Community |
|---|---|
| 最新版 |
2.6.0
/ 2025年8月31日 |
| リポジトリ |
github |
| プログラミング 言語 | Java, C言語 |
| 対応OS | OpenSolaris, FreeBSD, Linux, Microsoft Windows, macOS, Android |
| プラットフォーム | Javaプラットフォーム |
| 種別 | ライブラリ |
| ライセンス | BSDライセンス |
| 公式サイト |
jogamp |
Java OpenGL (JOGL) はJavaプラットフォーム上でOpenGLを使った3DCGソフトウェアを作成するための、オープンソースライブラリである。
JOGLではC言語で使えるOpenGLのほぼ全ての機能をJNIによりJavaで直接使えるようにしている。JNIのソースコードは同開発元のライブラリGlueGenによって自動的に生成されていて、C言語と大差ない感覚で使えるが、Java 3DなどのJavaライブラリほどローレベルなAPIを隠さず、オブジェクト指向に沿った構造ではない。そのため、低オーバヘッドによる高速な実行が期待できるほか、C言語のコードをほぼそのままJavaへ移行できるが、代わりにソースコードは単調で長くなる傾向にある。 JOGLにはOpenGLのAPIの他に、既存のGUIライブラリ (AWT/Swing/SWT) でOpenGLによってレンダーされた画像を表示させるためのクラスや、単体でOpenGLウインドウを表示するためのクラス (NEWT) なども含まれている。
元々はJSR-231のリファレンス実装としてKenneth Bradley RussellとChristopher John Kline、そしてのちにサン・マイクロシステムズによって開発された。だがOpenGLのバージョンアップに伴うAPIの変化に、OpenGL 1.xのみに対応しているJSR-231とオラクルのJDKのバイナリコードライセンスによって規格以上の機能は足せない都合上、JOGL 2.0よりほぼ同一ながら標準規格に沿わない独自のAPIを有している。またその関係でパッケージの名前空間もバージョン2.3.0よりjavax.media.openglから完全に移行している。
開発状況
2015年8月現在、JOGLはデスクトップ向けOpenGLバージョン1.0 - 4.5、モバイル向けESバージョン1.0 - 3.1、そしてEGLバージョン1.0 - 1.5に対応している。またほぼ全ての機能拡張も使える。 JOGLバージョン2.4.0ではOpenGLの後継APIであるVulkanへ対応予定。
関連項目
- OpenGL
- Java 3D - バージョン1.6よりJOGLをバックエンドに使用、JOGLよりオブジェクト指向に沿ったAPIを提供
- LWJGL - JOGLと類似する機能を有するJavaライブラリ
- Scilab - 2D、3DのレンダリングにJOGLを使用する数値計算システム
- RuneScape - JOGLを使ったMMORPG
- JSR-231 - JOGL1.xの実装するJCPによって標準化された規格
外部リンク
- 公式ウェブサイト
- JOGL JavaDoc - APIのドキュメント
- Setting up a JogAmp project in your favorite IDE - IDEでのJOGLセットアップ方法(英語)
- JSR-231 Java Bindings for OpenGL - 仕様詳細ページ
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.