| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Currently, the compatibility context on Mesa >= 9.1.3 seems to be
very broken. The core contexts, however, seem to be quite stable. This
commit both reduces and widens the scope of the current Mesa quirk to
include only Compatibility contexts on OpenGL > 3 || 3.n where n >= 1.
|
|
|
|
| |
like to compare float values - remove 64bit conversion.
|
|
|
|
| |
GL*ProcAddressTable's isFunctionAvailableImpl(..), getAddressFor(..)
|
|
|
|
| |
GLDebugMessageHandler GL Profile criteria for availability is wrong
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NativeWindowFactory.shutdownHook, the latter handles customShutdownHooks for NativeWindow, JOGL and NEWT.
Unifying our shutdown mechanism is required to provide a controlled shutdown sequence.
NativeWindowFactory is chosen to be the new central entry point, since it is the lowest denominator (common module).
- Move GLDrawableFactory.shutdownHook -> NativeWindowFactory.shutdownHook
Reverse the shutdown dependency for clarity and availability to all modules,
i.e. NEWT may not know about JOGL.
Remove the 'gamma' shutdown hook,
instead simply call GLDrawableFactoryImpl.resetDisplayGamma() before destroy.
NativeWindowFactory.shutdownHook handles customShutdownHooks for NativeWindow, JOGL and NEWT
- Modules can register their shutdown runnable at head or tail of list.
- Allows controlled shutdown across all modules.
|
|
|
|
| |
'is started' exception in such case; Cleanup brackets.
|
| |
|
|
|
|
| |
incl. access check; Move getAddressFor() from ctx -> private dbg-handler (sec); FFMPEGMediaPlayer: Missed fetching func-ptr 'glTexSubImage2D'.
|
|
|
|
|
|
|
|
|
| |
GlueGen related commits
- 23341a2df2d2ea36784a16fa1db8bc7385351a12
- 2d8e25398e929f553c4524e9c57f083d90ba4e08
- 8cabcd2de8b46c42dffcaaf46ccc2dc4d092ebba
- f69831574d4927d03d40c330d0b047d8c89622a4
- eb842815498f5926828b49c48fffce22fc9586a2
|
|
|
|
| |
f69831574d4927d03d40c330d0b047d8c89622a4 (checkAllLinkPermission() ..)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note: May be relocated to external project later!
Assumption:
gluegen/
joal/
jogl/
For OpenAL / JOAL code:
- use the package jogamp.opengl.openal (like jogamp.opengl.android)
- will be build _before_ the other 2nd pass java files
- do not expose OpenAL/JOAL APIs, if being used by other packages,
since only this package is being compiled w/ JOAL jar files!
|
|
|
|
|
|
|
|
| |
allowing to remove specialized values.
- Windows always used global
- The OpenGL library is always available by all processes system wide.
- Tested on OSX (was using local, previously).
|
|
|
|
|
|
|
|
|
|
|
| |
GLEventListener ; Optimize GLDrawableHelper's glViewportCall(..)
GLAutoDrawable must issue glViewport(..) even w/o GLEventListener
- Same behavior w/ or w/o GLEventListener requires to issue glViewport, always.
Optimize GLDrawableHelper's glViewportCall(..)
- 'private void init(..)' receives 'setViewport' argument to be passed to 'private void reshape(..)'
allowing to only the the viewport once @ 'public void init(..)' and display.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
between Java GL- and CALayer thread ; Simplify / Fix waitUntilRenderSignal().
Stuttering caused by lack of GL resource synchronization between Java GL- and CALayer thread
+ // Required(?) to finish previous GL rendering to give CALayer proper result,
+ // i.e. synchronize both threads each w/ their GLContext sharing same resources.
+ //
+ // FIXME: IMHO this synchronization should be implicitly performed via 'CGL.flushBuffer(contextHandle)' above,
+ // in case this will be determined a driver bug - use a QUIRK entry in GLRendererQuirks!
+ gl.glFinish();
Simplify / Fix waitUntilRenderSignal()
- remove loop and 'ready' condition -> nonsense
- if too later, i.e. lastWaitTime+TO < now, use now+TO as max. vsync waiting time
Bug735 Tests:
- Make vsync, wait and ECT (exclusive context thread) configurable via main args.
- Inv2*, Inv3* and Inv4*: Fluent Animation
- Works w/ ECT
|
| |
|
|
|
|
| |
contextMadeCurrent(false) if already swapped by swapBuffersImpl(..), but always swap in swapBuffersImpl(..) if ctx is current and associated.
|
|
|
|
| |
'es' suffix.
|
| |
|
|
|
|
| |
glRunnables.size()>0
|
|
|
|
| |
Reference QTT via QTT[] passed to frame, validate after parsing.
|
|
|
|
|
|
|
|
|
| |
"java.lang.IllegalStateException: zip file closed" on OSX 10.8.3 and Java 1.7.0_17
OS version: Mac OS X 10.8.3
Java version: 1.7.0_17
Catch any occuring exception at GLDrawable shutdown, report them briefly and verbose w/ DEBUG enabled.
|
|
|
|
| |
to take out the commented out 'final', but to enable the qualifier. Duh! Thank's to Harvey (again) for catching my odd work!
|
| |
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| | |
such a property + method do same thing as isIdentity), new setIdentity method, default constructor sets this quaternion to identity, new fromAxis method/costructor
|
| |
| |
| |
| | |
operations changed to VectorUtil instead
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
minimize footprint. Review of Harvey.
Since accessing the static final exposed strings would trigger static initialization,
setting the properties this way would not work anyways (if not inlined ..).
Well.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(default) ; Also: Use FloatUtil in-place multMatrixf.
PMVMatrix gluProject(..) and gluUnProject(..) don't pass their position (offset)
to the multMatrixf operation - even though they are sliced.
The API doc actually emphasizes this.
|
| |
| |
| |
| | |
multiply in place). Will be used by PMVMatrix.
|
|/
|
|
|
|
| |
AbstractGraphicsDevice.getUniqueID() and GLContext.getDeviceVersionAvailableKey()
.. both value classes unique, long lived and rare.
|
|
|
|
| |
potentially continue matching if having a pattern-match (don't loop for-ever).
|
|
|
|
|
|
| |
'valid' flag, always set major/minor and strEnd.
Also: Add negative tests to unit test.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
959d6d83ec26152343d538287c02eeebf0dcf238
Adapt to GlueGen commit 959d6d83ec26152343d538287c02eeebf0dcf238:
- Use only RegExp and cache default (no wrapped whitespace tokenizer)
- String match: Store end-of-match and flag defined components.
- Remove manual parsing, utilize VersionNumber
- No need to look further for 'updated' GL version, (probably the vendor version),
since we utilize the ARB version number as set at creation.
Fix vendor version parser:
- Cut off GL version part of versionString (fixes case where GL version was interpreted as vendor version)
- Loop through remaining string until a valid version number w/ major.minor has been found
|
|
|
|
|
|
|
|
|
|
| |
varying in/out mapping is different in vertex/fragment shader!
Vertex shader: varying -> out
Fragemnt shader: varying -> in
NV GLSL compiler ignored in/out direction,
where ATI GLSL compiler failed (could not find gcu_Weight, due to dead code).
|
|
|
|
| |
GLArrayDataWrapper.getBufferClass()
|
|
|
|
| |
properly; GLJPanel: Rely on GLPixelBuffer.requiresNewBuffer(..) for each frame, don't use local pixelBufferCheckSize (buggy w/ singleton)
|
|
|
|
| |
not throw an exception -> avoid calling useProgram(.., false).
|
|
|
|
| |
- Mesa 9.1* fails otherwise since it supports ES3/300 which is returned.
|
|
|
|
| |
version, following all other internal GLSL usage utilizing ShaderCode.
|
|
|
|
| |
Spec [1.30 - 1.40].
|
|
|
|
| |
SingletonGLPixelBufferProvider, if provided - releasing prev. smaller GLPixelBuffer after resize.
|
|
|
|
|
|
|
| |
GLReadBufferUtil's GLPixelBuffer* usage. Ref GLJPanel SingleAWTGLPixelBufferProvider's screenshots.
Ref GLJPanel SingleAWTGLPixelBufferProvider's screenshots:
<http://jogamp.org/files/screenshots/gljpanels-singlebuffer/>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLPixelBuffer/.. and enhance usage; GLJPanel: Use GLPixelBuffer* API and SingleAWTGLPixelBufferProvider if possible.
Refactor: TextureData's PixelAttributes/PixelBufferProvider -> GLPixelBuffer/.. and enhance usage
- GLPixelBuffer, GLPixelAttributes and GLPixelBufferProvider have potential for wider audience,
hence extract them to package 'com.jogamp.opengl.util'.
- Using GLPixelBuffer, shall attempt to use pack/unpack row-stride, i.e.
GL2GL3.GL_PACK_ROW_LENGTH, or GL2GL3.GL_UNPACK_ROW_LENGTH.
See GLReadBufferUtil and GLJPanel
- AWTGLPixelBuffer*: Attribute 'row-stride' allows reusing a bigger buffer than requested.
GLJPanel: Use GLPixelBuffer* API and SingleAWTGLPixelBufferProvider if possible.
- Use GLPixelBuffer API to remove redundancies
- Attempts to use SingleAWTGLPixelBufferProvider to save JVM/CPU heap space
for BuffereImage and IntBbuffer (readBack)
Added unit new test demonstrating multiple overlapping GLJPanels reusing (or not)
a singlton SingleAWTGLPixelBufferProvider.
|
|
|
|
| |
Better namings for vars, i.e. compCount, .. etc
|
|
|
|
|
|
| |
in their own color.
Note: JComponent will introduce flickering if using opaque rendering mode!
|