aboutsummaryrefslogtreecommitdiffstats
path: root/src/classes/com/sun/opengl/impl
Commit message (Collapse)AuthorAgeFilesLines
* - Fixed rootrel.build usage, this works properly through gluegen, jogl-demos ↵Sven Gothel2009-03-0513-84/+138
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and this build. You can say -Drootrel.build=build-x86_64 for example. - Fixed jogl-demos in regard to this changeset - Gluegen - Fixed gluegen BuildComposablePipeline's 'getGL*' methods. Now they return 'this', otherwise the pipeline would be broken/removed. - Add BuildComposablePipeline CustomPipeline, which allows customized class composition with an interface (to be wrapped), prolog class and the downstream class. - Add GlueGen (incl. ant task) 'outputRootDir' to be able to set a top output root dir via ant / commandline. - GL fixed function - Package 'javax.media.opengl.sub.fixed.*' defines some fixed function interfaces. This allows partitioning of custom implementation. - Using gluegen's new CustomPipeline to compose a GLFixedFuncIf implementation, using a GL downstream and a GLFixedFuncHookIf prolog. The latter implements the fixed functionality. Example is the GLFixedFuncImpl. gl.getContext().setGL( new GLFixedFuncImpl(gl, new FixedFuncHook(gl.getGL2ES2())) ) ; or gl.getContext().setGL( new GLFixedFuncImpl(gl, gl.getGL2ES1()) ) ; - The example GLFixedFuncHookIf impl FixedFuncPipeline/ can be instantiated with custom shader code. - ES2 and all other interfaces only contain the original functionality, besides minor convenient data access methods. - Fix: GL2ES2 createCompileShader() and createLoadShader() is moved to ShaderCode util class. - Updated PMVMatrix - Add: GLAutoDrawable.setContext() .. and all it's implementations Necessary to set a new GLContext. - Add: GLContext getAttachedObject(int) and putAttachedObject(int, Object), to allow the user to attach application specific and TLS sensitive objects to the GLContext. - git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1856 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added GLCapabilities.setBackgroundOpaque() and isBackgroundOpaque()Kenneth Russel2009-01-061-0/+5
| | | | | | | | | | for shaped window support on Mac OS X, and modified MacOSXCGLContext to pay attention to this bit. Changed Mac OS X port of Newt to make window non-opaque if borderless, and still allow it to receive the keyboard focus. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1841 232f8b59-042b-4e1e-8c03-345bb8c30851
* Moved javax.media.opengl.glsl.* and javax.media.opengl.sdk.* classesKenneth Russel2009-01-033-3/+2
| | | | | | | | | into com.sun.opengl.util.* hierarchy in preparation for refactoring of fixed function emulation into utility classes. Updated dependencies and demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1837 232f8b59-042b-4e1e-8c03-345bb8c30851
* Moved FileUtil and StreamUtil classes back into com.sun.opengl.utilKenneth Russel2008-12-302-189/+0
| | | | | | | | | package. Moved TGAWriter back into com.sun.opengl.util package to prevent creating a new package for a single class. Updated implementation and demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1836 232f8b59-042b-4e1e-8c03-345bb8c30851
* After more thought, realized once again that because most Java windowKenneth Russel2008-12-298-50/+33
| | | | | | | | | | | | | | | | | toolkits create persistent Java heap objects corresponding to components that might be realized and unrealized multiple times, the programming model of JOGL implies that GLDrawables must be persistent with regard to the components for which they are created, and that the setRealized(true/false) hook must be the indicator that any OpenGL resources associated with that window are to be created or destroyed. Removed GLDrawable.destroy(); it is now once again only present for GLPbuffer. Fixed up various on-screen and off-screen GLDrawable implementations. Refactored EGLDrawable implementation to trigger on setRealized(true/false); these changes have been compiled but not tested. Clarified documentation of GLDrawable.setRealized. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1828 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed notion of wrapped windows from the NativeWindow interface,Kenneth Russel2008-12-231-8/+3
| | | | | | | | leaving such handling up to toolkits such as Newt. Updated NativeWindow documentation. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1827 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed more bugs in glue code generation related to using opaque longKenneth Russel2008-12-201-0/+3
| | | | | | | | | | | type for pointers returned in arrays: specifically, the return value of glXChooseFBConfig. However, this fix contains an inherent memory leak for certain C APIs because the original Buffer is not necessarily available to be manually freed. Still, fixes remaining problems with pbuffer support on X11 platforms. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1825 232f8b59-042b-4e1e-8c03-345bb8c30851
* Factored out the remaining toolkit, and specifically AWT, dependenciesKenneth Russel2008-12-2017-651/+836
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from GLDrawableFactory implementations into NativeWindowFactory implementations. These dependencies were the up-front selection of the GraphicsConfiguration and the locking and unlocking of the toolkit, which are both currently needed only on X11 platforms due to how OpenGL and the window system interact there. Added X11GraphicsDevice and X11GraphicsConfiguration classes which are intended to be used by Newt or potentially other third-party window toolkits. Unified the separate NativeWindow and AWT GLDrawableFactory implementations in the GLDrawableFactory class. Exposed the toolkit locking mechanism through the NativeWindowFactory and introduced the concept of a default NativeWindowFactory which is used by the X11 drawable and context implementations. Removed unnecessary toolkit locking calls from Mac OS X and Windows drawable and context implementations. Added a registration mechanism for new NativeWindowFactories, allowing third parties to plug in new window toolkits orthogonally to the OpenGL drawable and context code. The public APIs for the NativeWindowFactory and the GLDrawableFactory, in particular how they are fetched, changed as a result of these refactorings. Updated all uses. Fixed bug in X11OffscreenGLXDrawable introduced during last set of changes. Tested demos on Solaris, Mac OS X and Windows. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1824 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed setSize(), setPosition(), setVisible(), and setFullscreen()Kenneth Russel2008-12-1617-130/+46
| | | | | | | | | | | | from javax.media.opengl.NativeWindow interface as these are concerns of the window toolkit and not the OpenGL binding. Removed isVisible(), isFullscreen(), getX(), and getY(). getWidth() and getHeight() remain. Changed implementations of offscreen and pbuffer drawables and changed GLJPanel to destroy and re-create its offscreen GLDrawable upon resize rather than attempting to resize the GLDrawable directly. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1823 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed nested toolkit locking problem with X11PbufferGLXDrawable. WithKenneth Russel2008-12-1416-57/+92
| | | | | | | | | | this fix pbuffers and the GLJPanel are working again on X11 platforms. Moved lockToolkit, unlockToolkit and isToolkitLocked from GLDrawableFactory to GLDrawableFactoryImpl. Updated all call sites. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1819 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed initialization of chosen GLCapabilities on X11 platforms forKenneth Russel2008-12-132-5/+12
| | | | | | | on-screen GLDrawables git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1818 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed NullPointerException during GLDrawable creation on X11 platformsKenneth Russel2008-12-131-1/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1817 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed bug in pbuffer support on Mac OS X due to confusion about whatKenneth Russel2008-12-122-27/+12
| | | | | | | | the native window's surface handle contains. Fixed bug in computation of chosen GLCapabilities on Mac OS X. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1816 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed breakage of GLJPanel caused by confusion between requested and Kenneth Russel2008-12-1217-82/+92
| | | | | | | | | | | | | chosen GLCapabilities. Separated these out and refactored requested GLCapabilities into GLDrawableImpl superclass. Removed setChosenGLCapabilities from the public API and made it protected on GLDrawableImpl. Removed it from all public GLDrawable implementations such as GLCanvas and GLJPanel. Fixed bug in Gears demo where mouse listener was not being hooked up correctly. Tested so far on Windows; testing on other platforms to follow. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1815 232f8b59-042b-4e1e-8c03-345bb8c30851
* Made compaction support optional in BackingStoreManager, and thereforeKenneth Russel2008-12-072-10/+35
| | | | | | | | | RectanglePacker, to make it easier for clients to get up and running; note that this also disallows expansion. Changed additionFailed to return a boolean. Updated GL2TextRenderer appropriately. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1814 232f8b59-042b-4e1e-8c03-345bb8c30851
* ../jogl.logSven Gothel2008-11-271-1/+3
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1810 232f8b59-042b-4e1e-8c03-345bb8c30851
* KD Fix: Use EGL AttributeList directlySven Gothel2008-11-272-2/+5
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1809 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt-KD: window working, pointer event buggySven Gothel2008-11-262-1/+5
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1806 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt WindowSven Gothel2008-11-264-69/+197
| | | | | | | | | | | | | | | | | | | - Uses GLCapabilities for window creation - Note: This is implemented in the new KDWindow only, for now. - FIXME: Respect GLCapabilities for other implementations (X11, MacOS, Windows) visualID shall be determined by GLCapabilities, and set to 0 if not implemented. - New OpenKODE KDWindow - Compile native code at with 'ant -DuseKD=true' - Use KD in newt with the Java property set newt.ws.name=KD - API change: NewtFactory.createWindow() takes GLCapabilities insteast of a fake visualID git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1804 232f8b59-042b-4e1e-8c03-345bb8c30851
* Replaced implementation of GLU Registry.gluCheckExtension withKenneth Russel2008-11-251-8/+6
| | | | | | | something CVM-compatible git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1803 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added GLU_TESS_AVOID_DEGENERATE_TRIANGLES boolean property to the GLUKenneth Russel2008-11-243-4/+67
| | | | | | | | | | | tessellator to try to improve the triangulation to support antialiasing in the JavaFX graphics stack. The new code largely works as intended, but is not as robust as desired, and also does not completely solve the problem. Checking in nonetheless to checkpoint the work. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1802 232f8b59-042b-4e1e-8c03-345bb8c30851
* proper EGL version attr settingSven Gothel2008-11-232-9/+14
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1801 232f8b59-042b-4e1e-8c03-345bb8c30851
* Temp. hack to un-break CVM build. Check my comments inlineSven Gothel2008-11-221-2/+8
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1800 232f8b59-042b-4e1e-8c03-345bb8c30851
* Incooperate cleaned up pathSven Gothel2008-11-212-2/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1798 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added parsing of OpenGL version string back intoKenneth Russel2008-11-211-0/+155
| | | | | | | | ExtensionAvailabilityCache, and addition of synthetic GL_VERSION_x_y extensions, for compatibility with previous versions of desktop JOGL git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1797 232f8b59-042b-4e1e-8c03-345bb8c30851
* EGLDrawable: Update the capabilities to the chosen one by EGLSven Gothel2008-11-191-1/+21
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1793 232f8b59-042b-4e1e-8c03-345bb8c30851
* cleanupSven Gothel2008-11-141-3/+3
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1789 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added function name aliasing for 'isFunctionAvailable' dyn lookup caseSven Gothel2008-11-141-2/+11
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1788 232f8b59-042b-4e1e-8c03-345bb8c30851
* - EGLSven Gothel2008-11-142-4/+37
| | | | | | | | | | | | | | | | | | | | | - Adding 'eglGetProcAddress(long eglGetProcAddressHandle, String funcName)', to be able to bootstrap 'eglGetProcAddress'. - EGLDrawableFactory - Adding ES2 libname GLES20 - Adding dynamicLookupFunctionOnLibs: Lookup in the libraries (dlsym) - Change dynamicLookupFunction: - Bootstrap 'eglGetProcAddress' first - 1st try eglGetProcAddress - 2nd try dynamicLookupFunctionOnLibs - GLContextImpl.isFunctionAvailable() - 1st try GL proc table (cached) - 2nd try platform extension proc table (cached) - 3rd try EGLDrawableFactory.dynamicLookupFunction (not cached) git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1787 232f8b59-042b-4e1e-8c03-345bb8c30851
* Rollback: EGLConfig back to wrapped buffer, since long nio buffers are not ↵Sven Gothel2008-11-132-6/+6
| | | | | | available on CVM git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1786 232f8b59-042b-4e1e-8c03-345bb8c30851
* - Removed StaticGLInfo usage.Sven Gothel2008-11-138-441/+265
| | | | | | | | | | | | | | | | | | | | | | | Function availability is checked by the dynamic ProcAddressTable, so it works as described/desired and removed around 30 kB of text. - Adding EGLExt to support EGLImage to share video buffers between another API (e.g. OpenMax) - EGL: Added platform extension query support - EGLClientBuffer is opaque long - GLXExt: Removed duplicated enumerates from GLX - GLContext: Promoted getPlatformExtensionsString() - GLProfile.setProfile<GL*>(void) changed order of setting the GL profile to: highest -> lowest: GL2 .. GL2ES12 .. GLES2 .. GLES1 git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1784 232f8b59-042b-4e1e-8c03-345bb8c30851
* X11 getPlatformExtensionsString shall use the toolkit lookingSven Gothel2008-11-071-2/+8
| | | | | | | optional, since it could be called from a locked state, e.g. setSwapInterval. Done. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1783 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix: TextureIO.java* DDSImage.java* (Relocation of io utils)Sven Gothel2008-09-021-3/+3
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1767 232f8b59-042b-4e1e-8c03-345bb8c30851
* Relocated common io helper from com.*.util.io -> com.*.impl.ioSven Gothel2008-09-023-0/+295
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1766 232f8b59-042b-4e1e-8c03-345bb8c30851
* BufferUtil:Sven Gothel2008-08-292-13/+7
| | | | | | | | | | | | | | | | | - new GL type tools - new put methods ImmModeSink: - using 1 VBO array for 1-4 attributes GLArrayData - split into GLArrayData and GLArrayDataEditable, the latter of modifying purposes only - GLArrayDataWrapper implements a container only git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1764 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added missing SystemUtils. Added proper GLSL ArrayData validationSven Gothel2008-08-212-0/+28
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1763 232f8b59-042b-4e1e-8c03-345bb8c30851
* Cleanup GLArrayData*, misc stuffSven Gothel2008-08-214-67/+137
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1762 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixing repo (shader directory, removal)Sven Gothel2008-08-1829-561/+0
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1761 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixing repo (shader directory)Sven Gothel2008-08-1818-0/+322
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1760 232f8b59-042b-4e1e-8c03-345bb8c30851
* Applied patch from Rick Brownrigg from NASA to fix GLU tessellator Kenneth Russel2008-08-182-2/+3
| | | | | | | error reporting git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1759 232f8b59-042b-4e1e-8c03-345bb8c30851
* ShaderState:Sven Gothel2008-08-147-19/+67
| | | | | | | | | | | | | | - reset: - lookup attributes first and process, if available - update the location in the state Fixed: - Add: CullFace (lill speed enhancement with textures) - Note: APX 2500 doesn't support blending, disregarding the ES 2.0 spec Blending must be implemented in the shader. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1756 232f8b59-042b-4e1e-8c03-345bb8c30851
* GLArrayData*Sven Gothel2008-08-132-16/+17
| | | | | | | | | | | | | | | | | | | | | - cleanup names and enable/disable code - bail out if components==0 in GL* impl. - add passing the VBO name for wrapping VBO server objects from the fixed function calls ShaderState: - reset: - only pass _enabled_ vertex attribute data in case of a reset - enable VBO in case of a wrapped VBO server object Fixed: - Added glMaterialf to GL (enables Angeles demo) - Working: Angeles on ES2 git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1755 232f8b59-042b-4e1e-8c03-345bb8c30851
* Ooops .. (repairing)Sven Gothel2008-08-122-1/+10
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1754 232f8b59-042b-4e1e-8c03-345bb8c30851
* Proper ES2 demo with precompiled shader (cleanup)Sven Gothel2008-08-121-9/+0
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1753 232f8b59-042b-4e1e-8c03-345bb8c30851
* Proper ES2 demo with precompiled shaderSven Gothel2008-08-121-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1752 232f8b59-042b-4e1e-8c03-345bb8c30851
* GLWindow: Added perf logging; FBO: adjusted texture format; Fixed: ↵Sven Gothel2008-08-122-2/+3
| | | | | | ColorTexture fix for ES2 git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1750 232f8b59-042b-4e1e-8c03-345bb8c30851
* Working:Sven Gothel2008-08-1220-64/+358
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | APX 2500 ES 2.0 + FixedFunction GLSL ES 1.0 +++ javax.media.opengl.glsl - Shader and program state management - Loading and merging shader source code - Loading binaries incl. auto selection of the binary file in respect to the supported binary format. I.e. in case of GLES2.GL_NVIDIA_PLATFORM_BINARY_NV: source: com/sun/opengl/impl/glsl/fixed/shader/ashader.fp binary: com/sun/opengl/impl/glsl/fixed/shader/bin/nvidia/ashader.bfp ShaderCode sc = ShaderCode.create( gl, gl.GL_VERTEX_SHADER, 1, FixedFuncPipeline.class, "shader", "shader/bin", "ashader"); (Derivation of com.sun.javafx.graphics.gl2es2.ShaderUtil) javax.media.opengl.sdk.glsl CompileShaderNVidia implements abstract CompileShader Toolkit to convert JOGL shader source to binaries, according to the location rule as described in ShaderCode. Example: Converts all fixed function shader to binaries. jogl/src/classes/com/sun/opengl/impl/glsl/fixed/shader/scripts/nvidia-apx/glslc-ff.bat (Generalization of com.sun.javafx.graphics.gl2es2.PrecompileNVShader) +++ Fixed function now resides in 'jogl.fixed.jar' - contains shader source and binaries - contains the implementation GL2ES2: - removed glShaderBinaryOrSource() - use glCreateLoadShader() for binary and glCreateCompileShader() for source - using addition glGetError() check for shader upload/compilation - Skipping 'glValidateProgram' in case of ES2 and no compiler, since it fails on APX2500 .. - added: (caching the results) "public Set glGetShaderBinaryFormats()" "public boolean glShaderCompilerAvailable()" - shader-name and binary-data buffer: use 'remaining()' instead of 'limit()' BufferUtil: - adding variant: <Type>Buffer new<Type>Buffer(<type>[] values, int offset, int len) +++ Working on all profiles ES1 + ES2 (CVM) with lighting: demo.es1.cube.Cube demo.es1.cube.CubeImmModeSink demo.es1.cubefbo.Main javabullet.demos.genericjoint.GenericJointDemo git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1749 232f8b59-042b-4e1e-8c03-345bb8c30851
* FixedFunction shader as files, prepared for binary shader filesSven Gothel2008-08-1116-275/+278
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1748 232f8b59-042b-4e1e-8c03-345bb8c30851
* Minor CVM/ES1 fixesSven Gothel2008-08-114-20/+51
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1747 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed unnecessary GL2 dependencies from desktop window system code. Kenneth Russel2008-08-084-20/+1
| | | | | | | | | | | | Moved Linux-specific DRIHack into shared code so it could be called from the common code path in GLProfile which now loads the shared libraries. Temporarily ignored WGL_OML_sync_control and WGL_NV_gpu_affinity extensions to avoid dependencies on NIO classes (java.nio.LongBuffer) not in CDC/FP/JSR-239 NIO profile. Can now run JOGL with CVM on the desktop. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1743 232f8b59-042b-4e1e-8c03-345bb8c30851