aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/com/jogamp/opengl
Commit message (Collapse)AuthorAgeFilesLines
* 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-305-104/+82
| | | | | | | | | 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
|
* 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()
* 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
* Fix ShaderProgram double destroy()Sven Gothel2011-05-171-2/+4
|
* Fix/Extend FBObject (API Change): plain init(GL), support multiple ↵Sven Gothel2011-05-171-116/+197
| | | | | | | | | | | | | attachTexture2D(..) (MRT) w/ tex units - plain initialization via init(GL) - dedicated texture2D color buffer attachement attachTexture2D(..) w/ tex units (<GL_MAX_TEXTURE_UNITS), which may happen up to max GL_MAX_COLOR_ATTACHMENTS to support MRT (multiple render targets) - more API doc - FBO/MRT/GLSL unit test w/ using 2 shader (decompose / compose)
* Fix: GLSLArrayHandler (data has no location); Fix ShaderState (switch ↵Sven Gothel2011-05-172-11/+17
| | | | program: set prev. !inUse)
* ShaderProgram: useProgram(..) -> publicSven Gothel2011-05-171-2/+2
|
* Fix ShaderState useProgram() case: on && program not linked (yet)Sven Gothel2011-05-161-3/+7
|
* JOGL/ShaderCode: Dump proper GLSL source w/ line numbers if GLSLCode debug ↵Sven Gothel2011-05-081-7/+21
| | | | prop is set
* Graph/JOGL: Avoid NPESven Gothel2011-05-081-1/+7
|
* ShaderState Switch Program: Only disable current program if no new one; ↵Sven Gothel2011-04-283-29/+36
| | | | Better toString formating
* ShaderState: Add 'ownUniform()/ownAttribute()'; rename glFunction -> ↵Sven Gothel2011-04-263-222/+308
| | | | | | | | | | | | | | function; switch program enh. ; Graph lifecycle Add 'ownUniform()/ownAttribute()' allowing to reset all bound uniforms/attributes, not just active ones plus handling the lifecycle of the owned attributes (destroy). This simplifies the lifecycle of all shader attributes. Rename glFunction -> function .. well, the GL attribute marks them GL related already Switch program enhancement. If switching to new program (unlinked), issue glBindAttributeLocation .. Graph lifecycle cleanup using the above ..
* ShaderState: 'Update' vertexAttribMap on enableSven Gothel2011-04-254-116/+145
| | | | | | | | | | | | | | | | | | ShaderProgram: - shaderCode's HashMap -> HashSet - adding HashSet for attached ShaderCode - link: allow relink, attachShader only if not yet attached - new add(gl, ShaderCode, ..) method, allowing compile/attach pre linkage - remove boxing of integer 'id', use generics style (warnings) - rename: glReplaceShader -> replaceShader, glUseProgram -> useProgram - fix: replaceShader - hashCode _is_ 'id' ShaderCode: - remove boxing of integer 'id', use generics style (warnings) - hashCode _is_ 'id' ShaderUtil: Use generics style (warnings), static names
* New FPSCounter, impl. by GLWindow and GLAnimatorControl (fps perf related ↵Sven Gothel2011-04-233-32/+45
| | | | | | | | | | | API change) - Don't fetch System.currentTimeMillis() by default and for every frame (performance) - Default behavior is FPSCounter switched off - Enable by frame interval, ie measure each 60 frames. - FPSCounterImpl is default impl. used by impl. FPSCounter class (reduce code/redundancy) - Might be promoted to GLAutoDrawable ?!
* Refactored graph: Reduce/remove data copy/recreation; Shader cleanupSven Gothel2011-04-231-10/+0
| | | | | | | | | | | | - Pass the current GL context object where it's required - Introduce RenderState (which has ShaderState) to acquire/change shader related data (Region) - Shader Cleanup: User import for common stuff; use req. version - Reduce/remove data copy/recreation in *Region implementation - UI/RIButton: Use defaults I like :)
* ShaderState: Validated impl./state-handling / Added commentsSven Gothel2011-04-221-221/+453
| | | | | | Capable of glBinAttribLocation(..) Proper state check (has program, linked program, ..) for attrib/uniform methods.
* FBObject: Add validation / API cleanupSven Gothel2011-04-221-42/+67
| | | | | | | | | Added validation of FB/render buffer creation using glGetError(), due to users trouble of determine the root cause of erroneous application behavior. This change shall help tackling bug: 492 and 495 https://jogamp.org/bugzilla/show_bug.cgi?id=492 https://jogamp.org/bugzilla/show_bug.cgi?id=495
* GLArrayData API and impl. changesSven Gothel2011-04-226-264/+292
| | | | | | | | | | | | | | | | | | | | | | +++ Remove GL parameter for - createFixed(..) - createGLSL(..) validation at client/server array data happens at 1st enableBuffer() call, no current context or profile required at creation time. Added ShaderState for createGLSL(..) clarifying dependency to the ShaderState, passing it down to the GLSLArrayHandler, which also removes the TLS GLContext.getCurrent() call. +++ Partially reverted ab48dac3f4419ceac51fdf059f310f0f0499c4d7 factory methods: removed added vboTarget parameter, since all createFixed and createGLSL are GL_ARRAY_BUFFER (VBO). Adding createData(..) factory method in GLArrayDataServer allowing diff vbo targets, ie GL_ELEMENT_ARRAY_BUFFER .. or none.
* reflect GLContext changes a5430cf16727fdc7bcfb17ef251018cc479d5f5dSven Gothel2011-04-221-7/+3
|
* Fix/Add: Locator (Handle JarURLConnection and ..)Sven Gothel2011-04-222-28/+76
| | | | | | | | | new: 'public static String getRelativeOf(URL baseLocation, String relativeFile)', capable of handling a JAR file/url. Using File based relative locator, allowing better utilization in code: old public static String getRelativeOf(String absoluteFileLocation, String relativeFile) new public static String getRelativeOf(File baseLocation, String relativeFile)
* Texture: Change method signatures: Pass GL context object if required ↵Sven Gothel2011-04-223-144/+121
| | | | | | | | | | | | | | (remove GLContext.getCurrentGL() usage. Using function signatures explicitly require the GL [current] instance clarifies that the context must be current. Removing GLContext.getCurrentGL() reduces TLS access of current thread and hence possible performance hits. The Texture class has been chosen for this conversion [not TextureIO yet], since the enable/bind methods maybe used within a rendering loop. User already 'complained' about lack of current GLContext clarity as well.
* Fix TAB: Replace all TAB with 4 spacesSven Gothel2011-04-088-92/+92
|
* Fix FBObject: Remove double stencil RB generation; Expose data (size, ..)Sven Gothel2011-04-081-13/+13
|
* FIX: Refactor GLArrayData and all it's implementations/sub-interfaces (VBO ↵Sven Gothel2011-04-088-154/+372
| | | | | | | | | | target, comments, names) VBO target: Allowing ELEMENT_VERTEX_ARRAY w/o corresponding GLSL/Fixed attribute Names: Clarified method named. Comments: Added and fixed comments
* ShaderProgram: Add 'init(GL2ES2)', allowing GL program object creation ↵Sven Gothel2011-04-051-0/+21
| | | | | | before link stage. This is required to allow proper usage of 'glBindAttribLocation()'.
* Make FBObject more generic, split FBO/tex and depth/stencil attachements. ↵Sven Gothel2011-04-051-67/+174
| | | | Allow parametrization of each component.
* ShaderCode: Remove redundant code (Use proper Locator variant)Sven Gothel2011-03-302-16/+5
|
* FPSAnimator: Poor attempt to wait for threads EOL after pause/stopSven Gothel2011-03-271-0/+6
|
* FPSAnimator: Avoid NPESven Gothel2011-03-251-6/+15
|
* Animator: Cleanup and better DEBUG infoSven Gothel2011-02-282-6/+9
|
* Clean/Fix: Threading CodeSven Gothel2011-02-261-1/+1
| | | | | | - Remove unsafe double checked locking - Annotate safe double checked locking (volatile) - use 'static final' if possible
* changes due to code cleanup in gluegen.Michael Bien2011-02-261-5/+4
| | | | | | - StringBuffer -> StringBuilder - ReflectionUtil.getBaseName -> class.getSimpleName() - cleanup imports, generics and @Override for all touched classes