aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/jogamp/opengl/egl/EGLDrawable.java
Commit message (Collapse)AuthorAgeFilesLines
* EGLDrawable: use the original requested Capabilities, ignore previously ↵Sven Gothel2012-02-221-3/+2
| | | | | | | | | chosen ones (x11,win32,..) - they are not fit The previous chosen caps might come from GLX, WGL .. however, these caps doesn't reflect EGL's capabilities - they may reflect less features. This fixes missing MSAA on linux/armv7 w/ GLX enabled.
* OpenGL ES/EGL OverhaulSven Gothel2012-02-131-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - GLProfile properly detects native EGL/ES1/ES2 on the 'desktop' device factory. This allows usage of Mesa's EGL/ES or Imageon's PVR emulation, etc. - GLProfile drops getDefaultDesktopDevice() and getDefaultEGLDevice() since both are aligned by getDefaultDevice(). - Fix GL_ARB_ES2_compatibility detection and utilize resulting isGLES2Compatible() where possible. This allows ES2 compatible desktop profiles to use core ES2 functionality (glShaderBinary() .. etc) even with a GL2ES2 desktop implementation. - EGLDrawable: If createSurface(..) fails (BAD_NATIVE_WINDOW) w/ surfaceHandle it uses windowHandle if available and differs. This allows the ANGLE impl. to work. - Properly order of EGL/ES library lookup: ES2: libGLESv2.so.2, libGLESv2.so, GLES20, GLESv2_CM EGL: libEGL.so.1, libEGL.so, EGL - *DynamicLookupHelper reference will be null if it's library is not complete (all tool libs, all glue libs and a ProcAddressFunc lookup function - if named). - Enhance GL version string (incl. ES2 compatible, hw/sw, ..) - GLBase: Fix docs and remove redundancies - Prepared (disabled) DesktopES2DynamicLibraryBundleInfo to be used for a real EGL/ES2 implementation within the desktop GL lib (AMD). Sadly it currenly crashed within eglGetDisplay(EGL_DEFAULT_DISPLAY), hence it's disabled.
* NativeSurface's getGraphicsConfiguration() returns the native (delegated) ↵Sven Gothel2011-11-231-1/+1
| | | | | | | | | | | AbstractGraphicsConfiguration, if delegation is used. This change restricts the usage of AbstractGraphicsConfiguration's getNativeGraphicsConfiguration() to NativeSurface implementations and hence reduces complexity. NativeSurface implementations are adapted and access to it's AbstractGraphicsConfiguration is controlled via get/set method avoiding flawed usage (read/write), since read access shall return the delegated AbstractGraphicsConfiguration, if used.
* JOGL *Drawable swapBufferImpl() cleanup: Don't force swap-buffer off for ↵Sven Gothel2011-11-061-0/+10
| | | | offscreen/pbuffer, but respect GLDrawableImpl's decision (double-buffer)
* EGL Fixes ...Sven Gothel2011-08-091-2/+0
| | | | | | - EGLDrawableFactory: createProxySurfaceImpl: add proper config choosing - EGLCapabilities/EGLGraphicsConfiguration: Add nativeVisualID - All: Avoid critical array access -> use NIO
* EGLDrawable.setRealized(true) - no update gfx-config if we already have ↵Sven Gothel2011-08-071-10/+9
| | | | proper EGL type.
* Refine some DEBUG code (verbosity)Sven Gothel2011-08-011-4/+10
|
* EGL: Collect all avail EGL caps w/o GLProfile preset ; Tolerate failing ↵Sven Gothel2011-07-311-10/+10
| | | | | | | | | | | | | EGL.eglChooseConfig() ; Cosmetics Collect all avail EGL caps w/o GLProfile preset - pass GLProfile null for collecting all available EGL GLCapabilities, allowing EGLGLCapabilities to set the GLProfile regarding EGLConfig's renderableType. Tolerate failing EGL.eglChooseConfig() - use chooser algo, trying to pick one EGLConfig manually Cosmetic toHexString change
* Move implementation private files from com.jogamp.<module>.impl. to ↵Sven Gothel2011-02-091-3/+3
| | | | | | | | | | | | | | | jogamp.<module> (2/2) - edit files - com.jogamp.opengl.impl -> jogamp.opengl - com.jogamp.opengl.util.glsl.fixedfunc.impl -> jogamp.opengl.util.glsl.fixedfunc - com.jogamp.nativewindow.impl -> jogamp.nativewindow - com.jogamp.newt.impl -> jogamp.newt This sorts implementation details from the top level, ie skipping the public 'com', allowing a better seperation of public classes and implementation details and also reduces strings. This approach of public/private seperation is also used in the OpenJDK.
* Move implementation private files from com.jogamp.<module>.impl. to ↵Sven Gothel2011-02-081-0/+232
jogamp.<module> (1/2) - rename task - com.jogamp.opengl.impl -> jogamp.opengl - com.jogamp.opengl.util.glsl.fixedfunc.impl -> jogamp.opengl.util.glsl.fixedfunc - com.jogamp.nativewindow.impl -> jogamp.nativewindow - com.jogamp.newt.impl -> jogamp.newt This sorts implementation details from the top level, ie skipping the public 'com', allowing a better seperation of public classes and implementation details and also reduces strings. This approach of public/private seperation is also used in the OpenJDK.