- 1 JogAmp's Static
- 2 JogAmp's Wiki
- 3 Hello Triangle and Texture
- 4 Common Mistakes
- 5 Java OpenGL Samples Pack
- 6 Wade's JOGL tutorials
- 7 Rami's JOGL tutorials
- 8 Justin's Getting Started with JOGL 2 Tutorials
- 9 Gordon and Clevenger textbook
- 10 Elect86's modern OpenGL examples
- 11 Nils Hoffmann's Netbeans Platform examples
- 12 Courses
- 13 LeoLoL.com Tutorials (Currently unreachable)
- 14 JOGL 1 tutorials
- OpenGL Evolution & JOGL
- API Doc [ Public, Specs [ Nativewindow, JOGL ] ]
- How to Build JOGL
- JOGL Test Applets
- NEWT - High Performance Native Windowing Toolkit
- OpenGL GL2ES2 GLSL Standalone Example by Xerxes Rånby
- Rudimentary standalone example using the fixed pipeline by Julien Gouesse
- Rudimentary standalone example using the fixed pipeline with OpenGL ES 1 by Xerxes Rånby
- Downloading and installing JOGL
- Setting up a JogAmp project in your favorite IDE
Hello Triangle and Texture
Simple sample that features GL4, pure newt, glWindow options, animator, indexed drawing, dinamic attribute and frag data binding, interleaved data, vao, vbo (with normalization on one attribute), ibo (with shorts), uniform, glsl program (with specific suffix) and matrix jogl util, gl error check, key listener and right way to dispose.
There is also a gl3 version and a Texture sample.
All the samples are written in Java and Kotlin.
I suggest you to take a read to these two pages for a quick overview over the most common problems, it is a very useful reading, legacy sections are carefully signaled.
Another common mistake that may happen if you port code from C/C++ to Java is this one:
Caused by: com.jogamp.opengl.GLException: unpack pixel_buffer_object must be bound to call this method
This happens because in C/C++, when you just want to allocate the space for a texture using, for example, glTexImage2D, you should not pass 0 as the last argument, but null.
N.B: The use of color picking is NOT recommended on any hardware whose palette is partially emulated.
Java OpenGL Samples Pack
The project aims to promote the new OpenGL features making easier version transitions for OpenGL programmers with a complementary documentation for the OpenGL specification. Despite the fact that the OpenGL Samples Pack provides as simple (and dumb) as possible samples, it's not a tutorial for beginner but a project for programmers already familiar with OpenGL. The OpenGL Samples Pack is also a good OpenGL drivers feature test.
These samples illustrate mostly of the OpenGL features from ES 2.0 up to the last GL extenstions, same of them usually also called AZDO (Almost Zero Driver Overhead).
Wade's JOGL tutorials
- Cross-platform workbench program using Eclipse and JOGL
- Faster rendering with vertex buffer objects
- Creating native binary executables for multi-platform Java apps with OpenGL and Eclipse RCP
- Displaying Java OpenGL in an Eclipse RCP editor with a menu bar and a run/pause button
Rami's JOGL tutorials
- JOGL Tutorial 1 - Environment Setup
- JOGL Tutorial 2 - Creating a Window
- JOGL Tutorial 3 - Creating a Render Loop
Gordon and Clevenger textbook
Shader-based modern OpenGL 3D graphics programming textbook entirely in JOGL. Also works as a JOGL primer. "Computer Graphics Programming in OpenGL with Java" by V. Scott Gordon and John L. Clevenger, published by Mercury, available at Amazon.
Elect86's modern OpenGL examples
Nils Hoffmann's Netbeans Platform examples
- Yet Another Tutorial on JOGL 2.0 - Including Nehe JOGL Port (Chua Hock-Chuan's notes at Nanyang Tech. University)
- Johannes's Courses at University of Oldenburg (German)
- Manuel's Courses at European University of Lefke
LeoLoL.com Tutorials (Currently unreachable)
- Lesson 1 - Setting up a JOGL Template
- Lesson 2 - Drawing basic 2D shapes
- Lesson 3 - Adding colour
- Lesson 4 - 3D Shapes and Rotation
JOGL 1 tutorials
(The old (not quite up-to-date) JOGL Userguide is currently available here)