| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
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!
|
|
|
|
|
|
| |
PixelBufferProvider: Add 'dispose()' to interface.
Transition reusing AWT specific PixelBufferProvider to allow a later user provided PixelBufferProvider.
|
| |
|
|
|
|
| |
is n/a force GLX (server) version down to 1.1 to avoid crashes w/ old GLX server (i.e. Mesa 4.*).
|
|
|
|
| |
GLSL version if GLSL is n/a
|
|
|
|
| |
adding BufferedImage support; Demonstrating w/ unit tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
JPEGDecode (not general enough)
- TextureData: Add PixelAttributes and PixelBufferProvider
- PixelBufferProvider is intended as a pattern allowing
producers (i.e. GLReadBufferUtil) to utilize custom pixel buffer
for various intend.
- PixelAttributes can be chosen by PixelBufferProvider implementation
and groups the texture's pixel/data format and type.
TextureData uses PixelAttributes internally now.
- ColorSink back to JPEGDecode (not general enough)
- Partially reverts 94ea306d1809290db678d3181619bdc39d4334bb
|
| |
|
|
|
|
| |
getDefaultPixelDataFormat(), complementing getDefaultPixelDataType()
|
|
|
|
| |
public use
|
|
|
|
| |
VersionNumber instead of null, it's get*string returns a zero length string instead of null.
|