Welcome to bGLOOP
bGLOOP is a reimplementation of the GLOOP library, a library for teaching beginner courses for OOP in Java with application to 3d programming. It is basically a wrapper to the basic functionality in JOGL. It's main focus is to make creation of small 3d programs really simple to focus on the basic ideas of OOP.
Calling bGLOOP a “better” GLOOP is not meant to refer to features, stability, and the like. The thing that's better about bGLOOP is that it's free software, unlike GLOOP which is a closed source project. So if you like to change anything to suit your specific needs — feel free to do so.
The API and the documentation is in German. Have a look at the javadoc.
Features, differences to GLOOP
GLOOP programs can be run with little changes to the source code. Most of the time it suffices changing
import bGLOOP.*. However, some things are done differently, and some features do not (yet) exist.
bGLOOP has most of the features of GLOOP. Have a look at the most notable differences (some are rather internal implementation details of the library):
|only working with old JOGL < 2.1.X library||uses current much more improved version of JOGL, currently version 2.3.2|
|selection of objects by window coordinates via
||implemented as of build 63|
|steographic rendering||not implemented (no plans to do so since I hate 3D movies)|
|not implemented||configuration by
|uses sin/cos matrix transformation to rotate the scene with the mouse in the camera view||uses jogl's quaternion implementation to compute camera rotation|
|not implemented||sophisticated logging scheme, configurable in
|not implemented||make a screenshot by calling a method or hitting a key|
|not implemented||rendering of objects in wireframe/fill mode on a per object level|
|not implemented||Three different drawing models for (most) of the base geometry classes (GLU, GL, VBO). Can be switched without recompilation by changing a flag in the .bgloop property file|
Will follow soon.
If you do not want to build the library by yourself you can use the current build. I have not thought about a versioning scheme, only incrementing the build number at the moment. To use bGLOOP you also need the jogamp jars (version >=2.3.2) listed below.
- bGLOOP.jar (build 89), packed and obfuscated with Proguard
- From the jogamp deployment archives download
gluegen-rt-platform.jarwhere platform is a placeholder for your OS. Put these files in the same directory as the
- javadoc API documentation (for build 89), zipped.