summaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/com
Commit message (Collapse)AuthorAgeFilesLines
* Animator timeout/refinementSven Gothel2011-11-114-21/+22
| | | | | | | - AnimatorImpl: evaluate double negation if(!skipWaitForCompletion(Thread)) -> if(blockUntilDone(Thread)) - Simplify finishLifecycleAction() and reduce timeout
* Animator: Limit wait for condition in finishLifecycleAction() via timeoutSven Gothel2011-11-101-4/+9
| | | | | | | | | | | | 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).
* OSX: SharedResource add knowledge of NPOT-, RECT- and Float-Texture ↵Sven Gothel2011-11-081-0/+13
| | | | | | features, used by pbuffer drawable before a current context. - Also extract getNextPowerOf2() -> GLBuffers (remove redundancy)
* JOGL: GLBase Add 'isNPOTTextureAvailable()' for convenienceSven Gothel2011-11-081-3/+1
|
* GLArrayData<VBO>: Add GLArrayHandlerFlat ; Update VBO name to interleaved ↵Sven Gothel2011-10-071-7/+9
| | | | | | | subarrays - Add GLArrayHandlerFlat gives better distinction of semantics - update sub-array VBO name, if parent's interleaved array initializes it.
* Clarify/Fix GLArrayDataEditable:padding() - no use case yet .. wellSven Gothel2011-10-072-5/+6
|
* PMVMatrix: Defaults from direct NIO -> array-backed non-direct NIO: Reduced ↵Sven Gothel2011-10-071-177/+248
| | | | | | | | | | | | | 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[]
* ShaderUtils: Use glShaderSource variant w/ NIO only argsSven Gothel2011-10-061-3/+5
|
* Workaround Android 3.0 Dalvik Issue 16434Sven Gothel2011-10-051-32/+46
|
* Graph Shader Simplification, 'a'/'b' redefined; GraphUI 2-pass demo;Sven Gothel2011-10-041-4/+3
| | | | | | | | | | | | | | | | | | | | | | | 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)
* Graph: Reflect shader name change in impl. TODO: Use/switch to 2nd pass shaderSven Gothel2011-10-021-1/+4
|
* Adapt to GlueGen's Lock ChangeSet: e4baba27507ce78e64a150ec6f69fb96f5721a34 ↵Sven Gothel2011-09-273-19/+19
| | | | ; Use generics
* NEWT/Reparenting: Give Composite WM some slack, sleep(100); Minor edits/fixesSven Gothel2011-09-161-1/+0
|
* Graph Fonts: Decorate w/ PrivilegedAction if requiredSven Gothel2011-09-151-16/+1
|
* Minor edits: generics, test scriptSven Gothel2011-09-141-8/+7
|
* Minor edits/cleanup: unused var, finalSven Gothel2011-09-071-1/+1
|
* GLArrayDataWrapper: Allow vboTarget '0' -> no VBOSven Gothel2011-09-021-1/+1
|
* GLSL ShaderState: verbose = DEBUG ? true : falseSven Gothel2011-09-011-1/+1
|
* DynamicLibraryBundle*: Use generics for better spec - following gluegen ↵Sven Gothel2011-08-311-10/+14
| | | | commit cfb9e118e020707842e6b5136b07f5ab149540c1
* ShaderState Usage/Test: Add setShaderState(GL) for pre-use attachment to the ↵Sven Gothel2011-08-302-6/+29
| | | | | | | | | | | 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
* GLSL DataArray/Handler: Remove ShaderState state and pass it through: ↵Sven Gothel2011-08-306-107/+90
| | | | | | | | | 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
* API Change GLArrayDataWrapper/GLArrayDataServer: Add vboTarget to wrapper ↵Sven Gothel2011-08-223-23/+68
| | | | | | cstr and add interleaved seg. vboTarget is required in case of interleaved segments to allow eg. interleaved indices.
* Fix regression of commit 6c346d98f04e2355210960fe9ffde47432f04d62, where ↵Sven Gothel2011-08-223-39/+86
| | | | 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
* 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-2210-379/+210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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
* Adapt to DynamicLibraryBundleInfo API change ; Remove non std EGL/ES libs ↵Sven Gothel2011-08-091-1/+5
| | | | (Android)
* Cont. fix 'Allow VBO/Texture Name (int) < 0'Sven Gothel2011-08-011-2/+2
| | | | | | | | Refines spec GLArrayData and it's implementations. see commit 76f7552c4a219b116e86949f271e613ba0f6f160 see commit 4d33a2df1e991ab75817dcb44061d88d3c499cdb see commit 2dbd16fc3edf29b39ba37a11b9fbf1b2aad75c45
* Cont. fix 'Allow VBO/Texture Name (int) < 0'Sven Gothel2011-08-013-16/+16
| | | | | | | Refines spec GLArrayData and it's implementations. see commit 4d33a2df1e991ab75817dcb44061d88d3c499cdb see commit 2dbd16fc3edf29b39ba37a11b9fbf1b2aad75c45
* VBO and Texture Names: Allos (int) < 0 - unusual valid names for some GL impl.Sven Gothel2011-08-013-13/+15
| | | | Turns out some GL impl. use VBO names like 0xa2d67443, which is (int) < 0.
* FixedFuncUtil: Name/Fix getFixedFuncImpl() -> wrapFixedFuncEmul()Sven Gothel2011-07-311-8/+10
| | | | | | | Fix wrapFixedFuncEmul(): - only wrap if ES2 and (!ES1 || force) - return same profile if ES1 - otherwise throw exception
* JoglVersion: Add info whether shader-compiler exists or notSven Gothel2011-07-311-0/+2
|
* JOGL: Add GLBase::isGLES2Compatible()Sven Gothel2011-07-311-0/+3
| | | | | Indicates whether this GL object is compatible with OpenGL ES2, i.e. has the extension <code>GL_ARB_ES2_compatibility</code>
* Use GlueGen Platform's OSType enumSven Gothel2011-07-214-0/+4
|
* Handle curved triangles overlaps.Rami Santina2011-06-203-632/+753
| | | | | | | | | | 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)
* Added handling for offcurve triangle overlaps.Rami Santina2011-06-142-435/+520
| | | | | | | subdivde overlaping triangles for the case of vertex inside a off-curve boundary triangle. added vertex in triangle test (using barycentric coordinates)
* Merge remote-tracking branch 'remotes/rsantina/master'Sven Gothel2011-06-114-38/+58
|\
| * Graph: Remove unused importsRami Santina2011-06-052-2/+0
| |
| * Graph: updated inclass documentationsRami Santina2011-06-053-36/+58
| |
* | Simplify and fix GL2GL3 usage (save/restore)Sven Gothel2011-06-091-28/+56
| |
* | GLBuffers fix ; GL imageSizeInBytes fix / unit tests.Sven Gothel2011-06-091-21/+391
| | | | | | | | | | | | | | | | | | | | - 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()
* | Merge remote-tracking branch 'rsantina/master'Sven Gothel2011-06-088-756/+659
|\|
| * Add Factory for triangulation with base Interface; misc cleanupRami Santina2011-06-057-226/+128
| | | | | | | | | | | | | | | | | | 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
| * Fix: transform to Quadratic; Refactor method namesRami Santina2011-06-053-528/+536
| |
| * Font and TypecastRender generate array of OutlineShapes instead of Path2DRami Santina2011-06-021-7/+0
| | | | | | | | GlyphShape and GlyphString use only OutlineShapes
* | Locator moved to GlueGen's IOUtil (gluegen ↵Sven Gothel2011-06-083-185/+9
| | | | | | | | a87c56c95099de5b6cbc9bd8bf6f1924a3dd6387)
* | Locator Util: Clarify API doc a bitSven Gothel2011-06-081-14/+14
| |
* | import cleanupSven Gothel2011-06-071-1/+0
| |
* | Using GlueGen IOUtil (dropped StreamUtil, FileUtil); Public GLReadBufferUtil ↵Sven Gothel2011-06-0711-274/+362
|/ | | | | | | | (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
* Remove implicit for loops reduces temp objectsRami Santina2011-05-213-4/+6
|
* Fix: vertex in loop test; using crossing methodRami Santina2011-05-211-11/+10
| | | | | Changed algo for in/out test of vertex wrt arbitrary polygon to crossing test since angle based is shown prune to precision errors