jjdh API

The API for the Program jjdh

This specification describes the OpenGL Demo Program jjdh.

See:
          Description

OpenGL related Packages
jjdh.opengl.attributes This Package contains several wrappers for basic OpenGL attributes.
jjdh.opengl.core This Package contains several fundamental classes.
jjdh.opengl.core.camera This Package contains classes to provide a camera whose position and adjustment can be set to any value by the user.
jjdh.opengl.core.counter This Package contains different counters to detect the frame rate of a running program.
jjdh.opengl.core.interfaces This Package contains very fundamental and widely implemented interfaces.
jjdh.opengl.core.light This Package contains classes to deal with light sources in OpenGL.
jjdh.opengl.core.texture This Package contains Texture utilties classes.
jjdh.opengl.engine.buffers This Package contains several specialized buffers based on ByteBuffer to provide a easy useable abstraction of the very efficent Vertex Arrays and Vertex Buffer Objects of OpenGL and the utility class VertexArrayJob which provides methods for the easy creation of buffers, the ability to create a suitable NormalBuffer automatically and to bunch all these buffers as a Renderable.
jjdh.opengl.engine.trigger This Package provides a framework to start (or stop) events if a Camera enters (or leaves) a sphere, which is defined by position and radius and represented as a SphericalTrigger.
jjdh.opengl.exercises This Package contains the solutions of the weekly exercises, the big final term presentation and some experimental code.
jjdh.opengl.exercises.playground.activerendering This Package contains classes to demonstrate the use of the new Interfaces in jjdh.opengl.program.renderer.
jjdh.opengl.exercises.playground.cg This Package contains classes to demonstrate the use of vertex and fragemt shader.
jjdh.opengl.exercises.playground.font This Package contains classes to display text in a given Font as Mesh.
jjdh.opengl.exercises.playground.intro This Package contains classes to demonstrate sound and rendering of html Pages to OpenGL textures.
jjdh.opengl.exercises.playground.particles This Package contains classes to demonstrate the use of vertex and fragemt shader.
jjdh.opengl.exercises.playground.scenegraph This Package contains a demonstration of the new simple screengraph api.
jjdh.opengl.exercises.playground.swing This Package contains classes to demonstrate rendering of standard swing elements to OpenGL textures.
jjdh.opengl.exercises.playground.vbo This Package contains highly experimental code concerning the Vertex Buffer Object (VBO) extension of OpenGL.
jjdh.opengl.exercises.presentation This Package contains the great big presentation which holds the highlights of our program.
jjdh.opengl.exercises.sheet01 This Package contains the solutions of the first weekly exercises.
jjdh.opengl.exercises.sheet02 This Package contains the solutions of the second weekly exercises.
jjdh.opengl.exercises.sheet02.builder This Package contains an old, builder based approach to realize Object-Rendering in OpenGL and remains here primary for backward compatibility.
jjdh.opengl.exercises.sheet03 This Package contains the solutions of the third weekly exercises.
jjdh.opengl.exercises.sheet04 This Package contains the solutions of the fourth weekly exercises.
jjdh.opengl.exercises.sheet05 This Package contains the solutions of the fifth weekly exercises.
jjdh.opengl.exercises.sheet06 This Package contains the solutions of the sixth weekly exercises.
jjdh.opengl.exercises.sheet07 This Package contains the solutions of the seventh weekly exercises.
jjdh.opengl.exercises.sheet08 This Package contains the solutions of the eight weekly exercises.
jjdh.opengl.exercises.sheet09 This Package contains the solutions of the ninth exercises.
jjdh.opengl.exercises.sheet10 This Package contains the solutions of the tenth exercises.
jjdh.opengl.exercises.sheet11 This Package contains the solutions of the final eleventh exercises.
jjdh.opengl.initialization This Package contains classes to initialize OpenGL and the surrounding GUI environment.
jjdh.opengl.input This Package provides a framework to map input from a input device (like a mouse or a keyboard) to actions (which encapsulate the functionality).
jjdh.opengl.input.actions This Package contains several OpenGL specific implentations of IContinuousAction and ISingularAction.
jjdh.opengl.meshes.common This Package contains several specific Mesh implentations.
jjdh.opengl.meshes.core This Package contains the essential classes of a Mesh based framework to realize Object-Rendering in OpenGL.
jjdh.opengl.particleEngine This Package contains a abstract, generic and easy extensible particle engine implementation.
jjdh.opengl.particleEngine.effects This Package contains some specific particle engine implementations.
jjdh.opengl.program This Package contains the interface OpenGLProgram and several standard realizations.
jjdh.opengl.program.renderer This Package contains several Interfaces which replaces the old GLEventListener.
jjdh.opengl.program.renderer.common This Package contains common implementations of the Interfaces in jjdh.opengl.program.renderer.
jjdh.opengl.scenegraph.simple.common This Package contains several specific ScenegraphNode implentations.
jjdh.opengl.scenegraph.simple.core This Package contains the essential classes of a scenegraph based framework to realize Object-Rendering in OpenGL.
jjdh.opengl.scheduling This Package provides a framework to schedule commands to run after a given delay (or to execute periodically) and considers that all OpenGL operations have to be called from the same thread.

 

Java API related Packages
jjdh.java.event This Package contains a generic framework to deal with a single state variable.
jjdh.java.math This Package contains classes which represents plain mathematical objects in the three-dimensional euklidian space.
jjdh.java.resource This Package contains the ResourceReference class to address resources in a (resource-) provider independent way and the Resources facade which provides a very comfortable loading of serveral common objects.
jjdh.java.resource.loader This Package contains more sophisticated loaders and appendant utility classes to read a InputStream in a given format.
jjdh.java.resource.provider This Package contains wappers for several common (resource-) providers.
jjdh.java.resource.provider.url This Package contains experimental classes to offer a ResourceReference as URL, which is in particular needed for the use of the JEditorPane class.
jjdh.java.util This Package contains utilitie classes to deal with some common objects of the Java API.

 

Project Independent Java API related Packages
dh.java.io This Package contains classes to provide streams based on highly efficient buffers.
dh.java.math.algebra.structure.relation This Package contains generic data structures and algorithms to model (possibly ordered) equivalence relations.
dh.java.math.graph This Package contains generic data structures and algorithms to model graphs and trees.
dh.java.util.collection This Package contains classes and interfaces to supplement the Java Collections Framework.
dh.java.util.logic This Package contains generic interfaces to model basic logic operations on a Collection.
dh.javax.sound This Package contains a top-level framework which is based on the low-level javax.sound.sampled framework to provide easy-to-use playback of several sampled sounds simultaneously, using thread pools and different (mostly ByteBuffer based) buffer strategies.
dh.javax.sound.demo This Package contains classes to demonstrate the use of the dh.javax.sound framework.
dh.javax.sound.filter This Package contains highly experimental code to filter (or more clearly to manipulate) sound in realtime to provide special effects (like an echo).

 

This specification describes the OpenGL Demo Program jjdh. It arosed in the context of the lecture with exercise "OpenGL mit Java" of Prof. Dr. W. Kowalk at the University of Oldenburg in the summer term 2006.

Author:
Jonas Jacobi (SVN-Name: "jonas"), Dennis Heidsiek (SVN-Name: "abba", programming recipe: "Smørrebrød, Smørrebrød, røm, pøm, pøm, pøm")

jjdh API

Copyright © 2006 Jonas Jacobi and Dennis Heidsiek. All Rights Reserved.