summaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/javax
Commit message (Collapse)AuthorAgeFilesLines
* Test: Cleanup warnings; Add GLProfile.initSingleton(true) call for ↵Sven Gothel2011-08-301-1/+0
| | | | | | | | | | fluctuating NEWT tests Add GLProfile.initSingleton(true) call for fluctuating NEWT tests - Some of these tests even fail in the <init> state, i.e. cause a JVM stack dump around an early GLX createContext method only when issued via Jenkins. The Ubuntu 11.04/64bit Jenkins node runs 2 nodes (32 and 64 bit). TODO: Find cause.
* Cleanup: Java Generics Use and Removed Unused MethodsSven Gothel2011-08-242-19/+19
|
* GLCapabilitiesImmutable: No need to extend WriteClonable explicitly, ↵Sven Gothel2011-08-241-1/+1
| | | | extended by super class
* NewtVersionActivity: Remove 'gears' test; Version Info: Drop ↵Sven Gothel2011-08-221-1/+1
| | | | NativeWindow/Newt Version since we use *all* targets
* Misc Rename/Reloc; GLArrayData*/PMVMatrix enhancments; Test fixes/adds ↵Sven Gothel2011-08-226-22/+145
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (GearsES1/ES2) rename/reloc: - javax.media.nativewindow.util: DimensionReadOnly -> DimensionImmutable PointReadOnly -> PointImmutable RectangleReadOnly -> RectangleImmutable unified 'immutable' name as used within jogamp already - remove array handler from public API com.jogamp.opengl.util.GL*ArrayHandler -> jogamp.opengl.util.GL*ArrayHandler - GLArrayData: Clarify method names getComponentNumber() -> getComponentCount() getComponentSize() -> getComponentSizeInBytes() getElementNumber() -> getElementCount() getByteSize() -> getSizeInBytes() - FixedFuncPipeline: Moved def. array names to GLPointerFuncUtil enhancement: - GLArrayDataServer: Add support for interleaved arrays/VBO - GLArrayData*.createFixed(..) remove 'name' argument (non sense for fixed function) - PMVMatrix: - one nio buffer - removed 'Pmv' multiplied matrix - removed 2x2 cut down 'Mvi' normal matrix (use 4x4 Mvi) - tests: - RedSquare -> RedSquareES1/RedSquareES2 - Gears ES1 fixed + ES2 added. Both work properly and share common Gears VBO construction - Added TestMapBuffer01NEWT, testing glMapBuffer
* Merge remote-tracking branch 'rsantina/master'Sven Gothel2011-08-091-1/+5
|\
| * GLRunnable API Change: Return boolean indicating whether the back buffer ↵Rami Santina2011-08-091-1/+5
| | | | | | | | | | | | shall be updated before swap. This allows color selection GLRunnables, executed after the GLEventListener.
* | GLProfile / eager init: Use relaxed query, if context was created while ↵Sven Gothel2011-08-072-10/+8
| | | | | | | | initialize shared
* | Don't enable DebugGL/TraceGL with jogl.debug=allSven Gothel2011-08-071-2/+11
| |
* | debug verbosity ; adaption of gluegen fix of DynamicLibraryBundleSven Gothel2011-08-051-5/+14
|/ | | | | | | fix debug log in case no device has been initialized use gluegen's fix of DynamicLibraryBundle.isGlueLibComplete() - see gluegen commit 6281499e53555fd8ab26345ffce4c4d09bf57a09
* GLProfile: Allow EGL besides desktop; Desktop factories restricted to ↵Sven Gothel2011-08-011-3/+18
| | | | | | | | | | desktop profiles Allow EGL besides desktop - Initialize EGL for default EGL device, even if desktop is available Desktop factories restricted to desktop profiles - Don't use native ES1/ES2 here ..
* Cont. fix 'Allow VBO/Texture Name (int) < 0'Sven Gothel2011-08-011-6/+6
| | | | | | | Refines spec GLArrayData and it's implementations. see commit 4d33a2df1e991ab75817dcb44061d88d3c499cdb see commit 2dbd16fc3edf29b39ba37a11b9fbf1b2aad75c45
* GLProfile: Fix exception; Minor ChangesSven Gothel2011-07-311-35/+57
| | | | | | - GL_PROFILE_LIST_MIN_DESKTOP -> GL_PROFILE_LIST_MIN - Fix exception in glAvailabilityToString(), if no profile is available - getMinDesktop() -> getMinimum()
* GLDrawableFactory::getFactoryImpl(): Only return the EGL factory if profile ↵Sven Gothel2011-07-311-7/+6
| | | | is native ES
* JOGL: Add GLBase::isGLES2Compatible()Sven Gothel2011-07-312-5/+22
| | | | | Indicates whether this GL object is compatible with OpenGL ES2, i.e. has the extension <code>GL_ARB_ES2_compatibility</code>
* Fix 'main' invocationSven Gothel2011-07-071-0/+1
|
* GLProfile: Initialization fix and clarifications ( GLExceptions on n/a ↵Sven Gothel2011-07-074-141/+140
| | | | | | | | | | | | | | profiles ) - GLProfile.initSingleton(boolean) (implicit or explicit) won't throw any exception anymore. Followup 'GLProfile GLProfile.get(..)' calls will throw a GLException, if n/a. Availability maybe queried via GLProfile.isAvailable(..). - GLCapabilties, GLCanvas, GLJPanel: Clarify case where GLException maybe thrown, i.e. no default GLProfile available on default device. - Remove redundant GLProfile.is<ProfileName>Available(..)
* GLContext GLDebugMessages: Add synchronous status/dumpStack; Remove length ↵Sven Gothel2011-04-281-7/+16
| | | | | | | | in aliased glDebugMessageInsert. - GLDebugMessages add synchronous status - defaults to true - GLContext/GLDebugMessages add dumpStack() if jogl.debug.DebugGL is set - Remove param length in aliased glDebugMessageInsert.
* ShaderState: Add 'ownUniform()/ownAttribute()'; rename glFunction -> ↵Sven Gothel2011-04-261-1/+1
| | | | | | | | | | | | | | function; switch program enh. ; Graph lifecycle Add 'ownUniform()/ownAttribute()' allowing to reset all bound uniforms/attributes, not just active ones plus handling the lifecycle of the owned attributes (destroy). This simplifies the lifecycle of all shader attributes. Rename glFunction -> function .. well, the GL attribute marks them GL related already Switch program enhancement. If switching to new program (unlinked), issue glBindAttributeLocation .. Graph lifecycle cleanup using the above ..
* FPSCounter def to 5*60 frames (each 5s at 60Hz) ; Test: each 1sSven Gothel2011-04-251-1/+1
|
* Add unified support for GL_ARB_debug_output and GL_AMD_debug_output.Sven Gothel2011-04-246-11/+442
| | | | | | | | | | | | | | | | | | | | | | If GL_ARB_debug_output is not available, but GL_AMD_debug_output exist, fallback to the latter, offering generic aliased methods translating the delta (AMD category <-> ARB source/type). Generic aliased methods reside in GLContext* Enable/Disable via GLContext and GLAutoDrawable. To enable the GLDebugOutput feature GLContext.enableGLDebugMessage(true) or GLContext.setContextCreationFlags(GLContext.CTX_OPTION_DEBUG) shall be called _before_ context creation via GLContext.makeCurrent()! In case GLAutoDrawable is being used, GLAutoDrawable.setContextCreationFlags(GLContext.CTX_OPTION_DEBUG) shall be issued before context creation via GLContext.makeCurrent()!. After context creation, the GLDebugOutput feature may be enabled or disabled at any time using this method. Verify both unit tests for usability.
* New FPSCounter, impl. by GLWindow and GLAnimatorControl (fps perf related ↵Sven Gothel2011-04-232-41/+118
| | | | | | | | | | | API change) - Don't fetch System.currentTimeMillis() by default and for every frame (performance) - Default behavior is FPSCounter switched off - Enable by frame interval, ie measure each 60 frames. - FPSCounterImpl is default impl. used by impl. FPSCounter class (reduce code/redundancy) - Might be promoted to GLAutoDrawable ?!
* GLArrayData API and impl. changesSven Gothel2011-04-221-2/+9
| | | | | | | | | | | | | | | | | | | | | | +++ Remove GL parameter for - createFixed(..) - createGLSL(..) validation at client/server array data happens at 1st enableBuffer() call, no current context or profile required at creation time. Added ShaderState for createGLSL(..) clarifying dependency to the ShaderState, passing it down to the GLSLArrayHandler, which also removes the TLS GLContext.getCurrent() call. +++ Partially reverted ab48dac3f4419ceac51fdf059f310f0f0499c4d7 factory methods: removed added vboTarget parameter, since all createFixed and createGLSL are GL_ARRAY_BUFFER (VBO). Adding createData(..) factory method in GLArrayDataServer allowing diff vbo targets, ie GL_ELEMENT_ARRAY_BUFFER .. or none.
* Fix GLProfile: Order of profiles Hi -> LowSven Gothel2011-04-221-54/+52
| | | | | | | Ensure returning the highest profile always: all old: GL4bc, GL3bc, GL2, GL2GL3, GL4, GL3, GL2ES2, GLES2, GL2ES1, GLES1 all new: GL4bc, GL3bc, GL2, GL4, GL3, GL2GL3, GLES2, GL2ES2, GLES1, GL2ES1
* GLContext changes:Sven Gothel2011-04-221-12/+32
| | | | | | | | | | | change: putAttachedObject(String) -> attachObject(String) putAttachedObject(int) -> attachObject(int) new: validateCurrent() the 'int' mapped/attached objects are using the IntIntHashMap now
* Fix TAB: Replace all TAB with 4 spacesSven Gothel2011-04-082-4/+4
|
* FIX: Refactor GLArrayData and all it's implementations/sub-interfaces (VBO ↵Sven Gothel2011-04-081-6/+18
| | | | | | | | | | target, comments, names) VBO target: Allowing ELEMENT_VERTEX_ARRAY w/o corresponding GLSL/Fixed attribute Names: Clarified method named. Comments: Added and fixed comments
* Fix: DEBUG field (regression)Sven Gothel2011-04-051-3/+2
|
* GLContext: Added java.debug.DebugGL and java.debug.TraceGL to enable debug ↵Sven Gothel2011-04-051-2/+7
| | | | and trace pipeline.
* Promote GLDrawableFactory.getOrCreateSharedContext(..) to public.Sven Gothel2011-03-261-1/+1
|
* Fix unnecessary NPE in case of unrealized GLCanvas (getRequestedCapabilities())Sven Gothel2011-03-261-1/+1
|
* Fix Bug #460 - GLCanvas NPESven Gothel2011-03-211-1/+4
|
* Add @OverrideSven Gothel2011-03-191-0/+3
|
* JOGL GLDrawableFactory: Expose experimental method createProxySurface(..) ↵Sven Gothel2011-02-281-0/+18
| | | | | | for new windowing system ad-hoc development. WARNING: This method may change ro be removed over time!
* Attempt to analyze failed AWT UI tests, where no paint is being issued to ↵Sven Gothel2011-02-261-3/+14
| | | | GLCanvas.
* Code cleanup: override, imports, StringBuilder, ..Sven Gothel2011-02-261-10/+17
|
* GLProfile: More Tolerant for missing features; MacOSX: Fix External Context ↵Sven Gothel2011-02-261-6/+10
| | | | / SWT; SWT Test: Distinguish awt/headless and main-thread (osx) swt launch
* GLProfile: Sorting importsSven Gothel2011-02-091-6/+10
|
* Move implementation private files from com.jogamp.<module>.impl. to ↵Sven Gothel2011-02-0911-35/+35
| | | | | | | | | | | | | | | 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.
* Fix GLContext ProcAddressTable Caching: Add sw/hw accel bit to hash value ↵Sven Gothel2011-02-061-0/+5
| | | | due to possible diff function ptr of sw impl (NV/Win7)
* Move GLCanvas' static initialization of default GLProfile into constructor ↵Dan Krisher2011-02-051-3/+1
| | | | to avoid requiring native libraries at class initialization time.
* JOGL change of default GLProfile order: GL4bc, GL3bc, GL2, GL2GL3, GL4, GL3, ↵Sven Gothel2011-01-312-15/+86
| | | | GL2ES2, GLES2, GL2ES1, GLES1
* GLCapabilities enhancements: Choosing, All-Available, Data Handling (X11, ↵Sven Gothel2011-01-315-95/+238
| | | | | | | | | | | | | | | | | | | | | | | | | | WGL and EGL) - GLDrawableFactory exposes: public final List/*GLCapabilitiesImmutable*/ getAvailableCapabilities(AbstractGraphicsDevice device) - GLCapabilities platform specialization containing native ids (XVisual/FBConfig, PFD, EGLConfig, ..) - GLCapabilities setPbuffer(true) disables onscreen - Capabilities setOnscreen(true) disables pbuffer - Capabilities implements Comparable - *Capabilities: enhanced 'toString(..)' - CapabilitiesChooser.chooseCapabilities: 'CapabilitiesImmutable[] available' -> 'List /*<CapabilitiesImmutable>*/ available' - VersionApplet, GLCanvas.main, GLWindow.main, GLProfile/debug: dumps all available GLCaps - WGLGLCapabilities: proper non-displayeble (pbuffer) pfdid handling TODO: ES/EGL test with emulation
* Fix: GLX exception message / sorted importsSven Gothel2011-01-311-1/+1
|
* GLCanvas: lock/sync drawable usage ; remove destroyed refs (context, ↵Sven Gothel2010-12-231-17/+104
| | | | drawable, awtConfig) ; Try create/destroy AbstractGraphicsDevice on EDT
* JOGL/NEWT: Introduce WindowClosingProtocol (solves Bug/Request 444)Sven Gothel2010-12-192-85/+137
| | | | | | | | | | | | | | | | | Similar to JFrame's closing behavior, the following components window closing follow the new WindowClosingProtocol: - GLCanvas - GLJPanel - NEWT Window, GLWindow - NEWT NewtCanvasAWT The implementation obeys either 1) the user value set by this interface, 2) an underlying toolkit set user value (JFrame, ..) 3) or it's default, eg. {@link #DO_NOTHING_ON_CLOSE DO_NOTHING_ON_CLOSE} within an AWT environment. If none of the above determines the operation, this protocol default behavior {@link #DISPOSE_ON_CLOSE DISPOSE_ON_CLOSE} shall be used.
* Adding NVIDIA 'Threaded optimization' workaround/fix at initialization on ↵Sven Gothel2010-12-192-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows for javaws/applets. It has been observed that for some combinations, eg: - Windows 7 64bit (other variants may apply too) - NVIDIA 8600M GT - 260.99 the NVIDIA setting of 'Threaded optimization' := 'auto' (default) causes the JVM to simply crash in case of javaws and [jnlp] applets. 'Threaded Optimization' := 'off' works reliable 'Threaded Optimization' := 'on' never works with javaws and applets on the above configuration A user could workaround this by setting 'Threaded Optimization' := 'off', however, this would disable many users on the spot, since you cannot ask the average user for such a task, if she only wants to see a web page. This patch 'fixes' the 'auto' mode by running the eager GL profile initialization within a block of single CPU affinity: SetProcessAffinityMask(pid, 1); try { initProfilesForDeviceImpl(device); } finally { SetProcessAffinityMask(pid, sysValue); } Hopefully we can remove this hack with a driver fix. However this workaround is as little invasive as possible.
* GLDrawableFactory: Add getFactory(AbstractGraphicsDevice device)Sven Gothel2010-12-191-1/+20
|
* Fix GLProfile initProfilesForDevice and DEBUG ; Fix JoglVersion.getGLInfoSven Gothel2010-12-191-32/+29
| | | | | | | | GLProfile.initProfilesForDevice: use either desktop or egl factory on one device GLProfile.DEBUG: Print proper factory instance, full device JoglVersion.getGLInfo: Print only availability of used device, otherwise we could kick off initialization
* GLCanvas: init drawable by paint/display makes the init sequence more equal ↵Sven Gothel2010-12-181-1/+3
| | | | for all launch flavors (applet/javaws/..)