j3dcore: changes from August Lammersdorf

Quoting August:
1. Mac OS X 10.7+ / Oracle JRE 7+

 - JOGL's OffscreenLayerSurface approach implemented
 - Canvas3D implements javax.media.nativewindow.OffscreenLayerOption
 - new Pipeline method 'resizeOffscreenLayerSurface'
 - Renderer detects Canvas3D's size changes and performs offscreen layer resizing

 - Still required : fix of Mac/Oracle JRE/JOGL's x/y-positioning and z-ordering issues (see post above)

 - classes: Canvas3D, JoglPipeline, NoopPipeline, Pipeline, Renderer

2. Offscreen rendering

 - deprecated pbuffer replaced with framebuffer object
 - based on JOGL's FBO implementation GLFBODrawable and FBObject
 - pbuffer is still available if FBO isn't supported or not desired
 - double buffering and scene antialiasing support if requested and available
 - currently fixed number of samples: 4

 - classes: Canvas3D, JoglPipeline, Renderer

3. Best configuration

 - Java 3D compliant GLCapabilitiesChooser introduced : J3DCapsChooser
 - Workaround if capability chooser isn't called (Mac/JRE 7)

 - class: JoglPipeline

4. Texture object generation

 - internal texture object name generation replaced with OpenGL 'glGenTextures' function
 - avoids conflict with JOGL's texture object names
 - new Pipeline method 'generateTexture' implemented

 - classes: Canvas3D, J3DGraphics2DImpl, JoglPipeline, MasterControl, NoopPipeline, Pipeline, TextureRetained, Texture3DRetained

Signed-off-by: August Lammersdorf <aldorf@interactivemesh.com>
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>