aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/com
Commit message (Collapse)AuthorAgeFilesLines
* CgDynamicLibraryBundleInfo: Add TempJarCache usage for atomic native jar (of ↵Sven Gothel2011-12-181-0/+18
| | | | | | | atomic java JAR) - GLProfile, NWJNILibLoader, NEWTJNILibLoader: Issue Platform.initSingleton() upfront within priviledge block.
* NativeSurface's getGraphicsConfiguration() returns the native (delegated) ↵Sven Gothel2011-11-231-1/+1
| | | | | | | | | | | AbstractGraphicsConfiguration, if delegation is used. This change restricts the usage of AbstractGraphicsConfiguration's getNativeGraphicsConfiguration() to NativeSurface implementations and hence reduces complexity. NativeSurface implementations are adapted and access to it's AbstractGraphicsConfiguration is controlled via get/set method avoiding flawed usage (read/write), since read access shall return the delegated AbstractGraphicsConfiguration, if used.
* 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