Overview
The JOGL project hosts the development of high-performance graphics binding for Java™, and is designed to provide hardware-supported 3D graphics and multimedia to applications written in Java™.
JOGL provides full access to the APIs in the OpenGL® [ 1.0 .. 4.6 ], ES [ 1.0 .. 3.2 ] and EGL [ 1.0 .. 1.5 ] specification
as well as nearly all vendor extensions.
OpenGL Evolution & JOGL
and the JOGL Specification
may give you a brief overview.
JOGL also embraces multimedia technology and binds to FFMpeg as well as to other media libraries providing a unified access API with JOAL. Further, stereo devices are supported in a generic fashion as well as for early OculusVR.
JOGL integrates with the AWT, Swing, OpenJFX and SWT widget sets, as well as with custom windowing toolkits using the NativeWindow API.
JOGL also provides its own native windowing toolkit, NEWT, running on top of X11, Windows, MacOS and even on bare-metal console mode without a windowing system.
JOGL contains Graph, a resolution-independent GPU NURBS curve renderer suitable for desktop and embedded devices and supporting text type rendering [ paper, slides ].
Graph is used in the contained GraphUI, enabling immersive UI within the 3D scene.
List of proposed work items & use-cases and current blog entries.
The JogAmp project needs funding and we offer commercial support!
Please contact Göthel Software (Jausoft).
Featured Projects
The following are a few examples of projects and products using
JOGL. Email the
maintainer to add yours.
Sections: Applications, Utilities,
Games, Old and
Discontinued.
Applications (Content, Simulations, CAD, Scientific, ..) |
Thermo-Calc's Additive Manufacturing models the Powder Bed Fusion process
and has a unified treatment of process parameters and alloy dependent thermophysical properties.
Thermo-Calc
is used by materials scientists and engineers to generate material properties data,
gain insights about materials, understand a specific observation, and answer ..
|
NASA World Wind Java
provides a suite of open-source
3-D virtual globe technologies
for Java applications, which can be utilized in user applications.
Version 2.0 now uses JOGL 2.
It provides a rich set of features for displaying and interacting with geographic data and representing
a wide range of geometric objects.
|
Force Field X is a computational microscope to study genetic variation and organic crystals using theory and experiment. It targets open research questions in the areas of: * Understanding the effect of missense variants on protein structure, thermodynamics and molecular phenotype. * Prediction of the structure, thermodynamic stability ...
|
JaamSim
is a free and open source discrete-event simulation software which includes a drag-and-drop user interface, interactive
3D graphics, input and output processing, and model development tools and editors.
|
MATSim is an open-source framework for large-scale agent-based transport simulations.
Source code is available in this git repository group.
|
Scilab is a free scientific software
package for numerical computations providing a powerful open computing
environment for engineering and scientific applications. It has
sophisticated data structures, an interpreter and a high level
programming language. It also integrates a 2-D and 3-D plotting module
designed to visually represent and understand complex data.
|
Processing is an open
source programming language and environment for people who want to
program images, animation, and sound. It is used by students, artists,
designers, architects, researchers, and hobbyists for learning,
prototyping, and production.
|
BioJava
is an open-source project providing a framework for processing biological data, analytical & statistical routines, parsers for common file formats & allows the manipulation of sequences & 3D structures.
RCSB Viewers suite provides creating
3D viewing applications, e.g. RCSB Protein DB
(Example)
& Epitode DB.
|
GeoGebra
is free and multi-platform dynamic mathematics software for all levels of education that joins geometry, algebra,
tables, graphing, statistics and calculus in one easy-to-use package.
GeoGebra 5.0 has experimental 3D support utilizing JOGL.
Developer Wiki, SVN Repository.
|
Gephi is a tool for people that have to explore and understand graphs. Like Photoshop but for data,
the user interacts with the representation, manipulate the structures, shapes and colors to reveal hidden properties.
Goal is to help data analysts to make hypothesis, intuitively discover patterns, isolate structure singularities or ...
|
jReality
is a Java based, full-featured 3D scene graph package designed for 3D visualization and specialized in mathematical visualization.
It has a flexible shading model based on an attribute-inheritance mechanism in the scene graph, ...
Tutorial examples,
further info.
|
MeteoInfo is an intergrated framework both for GIS application and scientific computation environment. MeteoInfoMap is a GIS application which enables the user to visualize and analyze the spatial and meteorological data with ...
|
Aspose.Words Java
is a document processing API for Java.
Develop applications with the ability to create, process, render and convert Word documents
to multiple formats in Java.
|
Sweet Home 3D is a free interior design application
which helps you draw the plan of your house, arrange furniture on it and visit the results in 3D.
|
FROG
is a fast OpenGL event display tool mainly developed for visualization of data
in the field of high energy physics. FROG is mostly used to visualized/animate data
from proton/proton collision produced in the CMS experiment at the LHC, CERN, Switzerland.
|
|
Utilities, Libraries, Building blocks |
Java3D
is back.
It is maintained by Harvey Harrison and initially ported to
our current JOGL version by Julien Gouesse.
Source available via this git repository
and JAR files can be downloaded here.
Our forum may help you with your questions.
|
Ardor3D
is a professionally oriented, open source, Java based 3D engine.
Resources: Maven Repo, git repo.
Julien Gouesse started the new JOGL backend development,
which is now merged into the official trunk.
|
Jzy3d
(Java Easy 3d) allows rapid display of 3d scientific
data. Functions can be bound to colormaps & and predefined simple 3d shapes
can be rendered programmaticaly or from csv files.
The API relieves of working with OpenGL, 3d polygon ordering and transparency management.
|
JMathAnim is a library written in JAVA intended to simplify the process of doing mathematical animations. Initially inspired by the python manim library from 3Blue1Brown.
See the gallery with examples and source in this git repository.
|
Mason 22
is a fast agent-based simulation library core, designed to be the foundation for
large custom-purpose Java simulations, and also to provide more than enough functionality
for many lightweight simulation needs. MASON contains both a model library and
an optional suite of visualization tools in 2D and 3D
(git repository).
|
jMonkeyEngine
is a game engine for 3D games following modern technology standards.
Currently Julien Gouesse
develops a JOGL backend for jME3
with support of the jME team. Mobile device support requires proper OpenGL profile separation.
|
dyn4j
is a 2D collision detection and physics engine, designed to be fast, stable, extensible, and easy to use.
|
JglTF
is a Java implementation of glTF™ (GL Transmission Format),
including converter, viewer, browser and other utilities.
|
JavaCV
JavaCV uses wrappers of commonly used libraries by researchers in the field of computer vision
(OpenCV, FFmpeg, ... OpenKinect, librealsense, ... and Tesseract) and eases use on the Java platform and Android.
|
Fiji is an image processing package — a "batteries-included" distribution of ImageJ, bundling many plugins which facilitate scientific image analysis.
Source code is available in this git repository group.
|
Nifty GUI is a Java Library that supports the building of interactive user interfaces for games or similar applications.
The configuration of the GUI is stored in xml files with little supporting Java code.
|
Glimpse is an Interactive Data Visualization in Java and OpenGL.
Source code is available in this git repository.
|
Unlicense is a general purpose framework created in 2012. The project
provides character encoding, compression, protocols and image decoders.
As for rendering this library offer numerous 3D format readers, a custom UI api,
and a 3D engine build ontop of JOGL and JOAL.
|
JebGL
is a piece of Javascript which lets you run your WebGL apps in browsers lacking WebGL support without having to modify your existing code!
|
|
Games |
Wakfu
is a tactical turn-based MMORPG by Ankama Games and released for Windows,
MacOS, and Linux in 2012. The game takes place 1,000 years after Dofus.
In a world in distress, players are free to rebuild or destroy it under their nation's flag!
In addition to quests, adventures and humor, WAKFU offers players a brand new ...
|
Archipelago is an OPEN WORLD for virtual sailors.
Can’t go sailing today? Don’t have a sailboat? Hey! You can practice your skills & have fun with Archipelago!
Our mission is to provide a fun & safe environment & entertainment for you.
... started as an experiment to learn OpenGL in Java…
|
Ticket to Ride
and Memoir '44 are boardgames published by
Days of Wonder.
They also make digital versions of these games since 2006. These are available on all desktops computers (Windows, MacOS and Linux),
thanks to the use of Java and JOGL.
|
Jake2 is a port
of id Software's GPL'd Quake II engine from C to Java done by bytonic software.
Jake2 uses JOGL for desktop OpenGL and mobile OpenGL ES1 and ES2 use
including dropping AWT in favor of NEWT.
You can find the current source code in this
git repository.
|
|
Older projects ... |
chronotext is a series
of visual design experiments involving animated text and 3D objects
and surfaces. Several examples can be run on-line via Java Web
Start. See the latest
experiments of mapping text on to real 3D surfaces.
|
With STRAP you can align your proteins by
sequence and 3D-structure. STRAP simultaneously displays
3d-structures, amino acid sequence alignment and nucleotide sequences.
It has powerful annotation features.
|
Art of Illusion is a free, open source 3D modelling and rendering
studio. Many of its capabilities rival those found in commercial
programs. Some of the highlights include subdivision surface based
modelling tools, skeleton based animation, and a graphical language
for ...
|
FengGUI is a graphical
user interface (GUI) application programming interface (API) based on
OpenGL. FengGUI provides all typical GUI components like buttons,
sliders, trees, text areas, frames, tabs, etc. which are required to
build a complete GUI system.
|
Sculpteo offers a 3D printing service, fast and available for everyone.
Starting from a 3D design, Sculpteo makes a specific object : interior decoration, characters, robots, miniatures, models, mechanic objects...
|
|
Discontinued projects |
CCTs
C3D Interactive
is a leading BIM-based construction project control application.
The solution helps Construction Managers, owners and contractors to visualize and
control their projects, by analyzing key construction information, based on
actual progress as well as do visual “look-ahead” based on current progress rates, etc.
C3D Mobile is available free on Google Play.
|
Impact is a
complete finite element suite including preprocessor, solver and
postprocessor which is useable for simulating dynamic events such as
car crashes or stamping of metal sheets. The suite allows 3D
modelling, solving and viewing of simulation results, all in OpenGL
accelerated graphics through the use of JOGL.
|
OneStone® Pebbles are a new series of calculus visualization tools developed
by Bright Ideas Software®.
Each 'Pebble' in the series is a stand-alone
program designed to illustrate a specific topic in the calculus
syllabus. The Pebbles used JOGL for their interactive 3D rendering.
|
Volume Viewer
is an open source renderer for 3D volumetric data. It provides tools for coloring your model,
cutting away pieces, and viewing it from any angle. It can cast shadows within the model for extra realism.
You can even upload your own volumetric data and view it in real time.
|
MyHMI
is a Java based object oriented software framework for industrial graphical user interfaces development.
It enables creation of visually adjustable interfaces for embedded systems, independently of underlying OS
or hardware platform, communication or data processing mechanisms.
|
GL Studio is an object oriented rapid application
development tool that allows a user to graphically combine
photographs, 3D models and behavior logic to create advanced 2D and 3D
human machine interfaces. GL Studio generates Java or C++ source code ...
|
jspatial
implements a set of spatial data structures. It
features Quadtree and Octtree implementations, including efficient area
and raycast queries. It has numerous working examples ...
|
GLG2D is a Graphics2D implementation that uses OpenGL to implement basic Java2D drawing functionality.
We currently use the fixed function pipeline, with the GL2 profile for most functionality.
|
J4K is an an open source Java library that implements a Java binding for the Microsoft's Kinect SDK. It provides access to the video, depth, and skeleton streams of the Kinect
(Demo Video).
|
libGDX
provides a cross-platform API for game and real-time application development. It's powerful abstractions let you chose how you want to write your game or application. The JOGL backend, a team effort of the JogAmp community, allows applications to be deployed on desktop and mobile platforms (source code).
|
The Fusion Framework enables Swing
components to be extended with 3D content via JOGL.
In general the 3D content will show up in layers on top of the corresponding Swing
component. The system provides a simple scenegraph, Swing-like mouse interaction, and low-level
animation support, as well as GLSL shaders and .obj file loading. The
demo page contains several Java Web Start applications.
|
Vehicle Dynamics Engine Demo
is a Java Web Start demonstration of a 3D physics engine developed by
Insight Machines. The
engine is designed especially for car games. The demo uses JOGL and
employs such techniques like shadow casting using the stencil buffer.
|
The Elflight Engine is a games engine designed for the web.
It supports hardware accelerated 3D games and applications in a web browser,
with the ability to import assets from major 3D packages such as Maya and 3D Studio.
The focus of the engine's architecture is minimal startup time, fast streaming, ...
|
Vehicle Dynamics Engine Demo
is a Java Web Start demonstration of a 3D physics engine developed by
Insight Machines. The
engine is designed especially for car games. The demo uses JOGL and
employs such techniques like shadow casting using the stencil buffer.
|
Everplanes is a game of exploration, building, survival and strategy.
It introduces new gameplay, resources and challenges in the updates.
Each time the game is started, it automatically downloads the latest updates.
The game includes a built-in server for LAN or Internet play.
You can run an open server, or ...
|
|