| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
While impl. recreation for offscreen surfaces @ WindowImpl.setSize(),
commit 51ad6992e068f25d86d2c9e085bd7ec6f49d2432, it appears Animator deadlocks in some cases.
finishLifecycleAction() [blocks until pause() .. is accomplished]
queries whether we are even able to wait using skipWaitForCompletion().
The latter method can only query if we are on the animation thread or AWT-EDT, etc,
but not if we have traversed through a 3rd party thread, eg NEWT EDT.
This patches limits the wait with a timeout of 20frames @ 60Hz (20*16ms).
|
|
|
|
|
|
| |
features, used by pbuffer drawable before a current context.
- Also extract getNextPowerOf2() -> GLBuffers (remove redundancy)
|
| |
|
|
|
|
|
|
|
| |
subarrays
- Add GLArrayHandlerFlat gives better distinction of semantics
- update sub-array VBO name, if parent's interleaved array initializes it.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
cycles 45% -> 5% (from GearsES2 100%)
- NIO direct access from Java is expensive
- default is now array-backed non-direct NIO,
which guarantees array useage for Java computation (especially the inverse calculation)
- only update Mvi and Mvit if requested in the first place
- moved all local matrices to float[]
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Graph Shader Simplification
- remove enable factor and 2nd 'discard' branch
- use build-in 'max'/'clamp' functions, supposed to be faster
Graph Shader 'a'/'b' redefined
- 'a' is 1-pass shader only
- 'b' is 2-pass incl. (1st pass + 2nd pass)
- Works well on ARM Mali-400 MP (Galaxy S2).
- Doesn't work on NV tegra2 (P1202: Texture's gl states do not match with shader's),
however 2-pass on mobile seems to be overkill for now.
We may create a workaround (switch shader ..).
GraphUI 2-pass demo;
- Propagate renderModes and texSize to UIShape's render(..)
- TODO: Remove GL dependency in UIShape, maybe use a callback or visitor model
- Adding GarpUI 2-pass launcher (Android and Standalone)
|
| |
|
|
|
|
| |
; Use generics
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
commit cfb9e118e020707842e6b5136b07f5ab149540c1
|
|
|
|
|
|
|
|
|
|
|
| |
GL context ; GLArrayDataClient-GLSL: Check if ShaderState is attached.
ShaderState Usage/Test: Add setShaderState(GL) for pre-use attachment to the GL context
- test cases utilize ShaderState before useProgram() was invoked,
hence we need an API entry to attach the ShaderState explictly
GLArrayDataClient-GLSL: Check if ShaderState is attached.
- catch error case of non bound ShaderState to GL context
|
|
|
|
|
|
|
|
|
| |
ShaderState.getShaderState(gl)
This removes the dependency of a GLSL GLDataArray object to a specific ShaderState
and enables sharing of this VBO data, i.e. via a shared context.
Test: TestSharedContextVBOES2NEWT
|
|
|
|
|
|
| |
cstr and add interleaved seg.
vboTarget is required in case of interleaved segments to allow eg. interleaved indices.
|
|
|
|
| |
VBO/attribute binding wasn't updated (VBO data written, shader change/switch attribute on same location) ; Optimized interleaved GLSL VBO binding, hence split up GLArrayHandler syncData/enableState
|
|
|
|
| |
NativeWindow/Newt Version since we use *all* targets
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(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
|
|
|
|
| |
(Android)
|
|
|
|
|
|
|
|
| |
Refines spec GLArrayData and it's implementations.
see commit 76f7552c4a219b116e86949f271e613ba0f6f160
see commit 4d33a2df1e991ab75817dcb44061d88d3c499cdb
see commit 2dbd16fc3edf29b39ba37a11b9fbf1b2aad75c45
|
|
|
|
|
|
|
| |
Refines spec GLArrayData and it's implementations.
see commit 4d33a2df1e991ab75817dcb44061d88d3c499cdb
see commit 2dbd16fc3edf29b39ba37a11b9fbf1b2aad75c45
|
|
|
|
| |
Turns out some GL impl. use VBO names like 0xa2d67443, which is (int) < 0.
|
|
|
|
|
|
|
| |
Fix wrapFixedFuncEmul():
- only wrap if ES2 and (!ES1 || force)
- return same profile if ES1
- otherwise throw exception
|
| |
|
|
|
|
|
| |
Indicates whether this GL object is compatible with OpenGL ES2,
i.e. has the extension <code>GL_ARB_ES2_compatibility</code>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
subdivde overlaping triangles for the case when 2 triangles intersect
either by vextex of Traingle A in Triangle B
or an edge in A intersects an edge in B
VectorUtil:
-added tri2triIntersection test (not optimized)
-added seg2segIntersection test (not optimized)
|
|
|
|
|
|
|
| |
subdivde overlaping triangles for the case of vertex inside
a off-curve boundary triangle.
added vertex in triangle test (using barycentric coordinates)
|
|\ |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Moved implementation of prev GL imageSizeInBytes(..) -> GLBuffers.sizeof() for all GL profiles
- GLBuffers.*: Added missing formats and types (GL2.1, GL3.3 and GL4.1)
- GLBuffers.sizeof(): Fail fast if format/type is unhandled, or alignment invalid
- Added unit test for GLBuffers.sizeof()
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CDTriangulation moved to impl (jogamp.graph), where additional triangulations
or a wrapper to GLU triangulation can be added to triangulator.
TWO_PASS_RENDERING renamed to VBAA (algorithm name)
misc comments cleanups
|
| | |
|
| |
| |
| |
| | |
GlyphShape and GlyphString use only OutlineShapes
|
| |
| |
| |
| | |
a87c56c95099de5b6cbc9bd8bf6f1924a3dd6387)
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
| |
(screenshot etc) and GLPixelStorageModes
- Using GlueGen IOUtil, dropping StreamUtil and FileUtil
- Public (util) GLReadBufferUtil for screenshots and slow r2t (AWT less), as well as GLPixelStorageModes
|
| |
|
|
|
|
|
| |
Changed algo for in/out test of vertex wrt arbitrary polygon
to crossing test since angle based is shown prune to precision errors
|
| |
|