aboutsummaryrefslogtreecommitdiffstats
path: root/doc
Commit message (Collapse)AuthorAgeFilesLines
* Update HowToBuild.htmlSven Gothel2019-03-271-34/+6
| | | | | Minimum supported Debian version is now Debian 9 or Stretch to minimize maintenance. Note: No other GNU/Linux version has been validated so far.
* Bug 1348: X11 XI Multitouch: Fixes of previous commit ↵Sven Gothel2019-03-271-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 92006e4baef57f1f3fb647dd307aed5989fd4c8d Previous commit 92006e4baef57f1f3fb647dd307aed5989fd4c8d (Note to Danny: I cannot test this now - please re-test and/or review) X11Common::JavaWindow - Owns XI extension's xiOpcode, selected xiTouchDeviceId and tracked XITouchPosition array X11Window::CreateWindow - Query XI extension only once @ window creation and earmark xiOpcode in JavaWindow instance - Fix: Device selection code was "class->type != XITouchClass", but shouldn't it be 'XITouchClass == class->type' (as patched here) - Fix: Free XIQueryDevice returned XIDeviceInfo array via XIFreeDeviceInfo - Earmark deviceid in JavaWindow instance X11Display - Moved global static touch_coordinates to JavaWindow::xiTouchCoords instance X11Display::DispatchMessage - Changed event handling structure similar to https://keithp.com/blogs/Cursor_tracking/ - Fix: Free XGetEventData's optional memory allocation via XFreeEventData - Reuse JavaWindow's queried xiOpcode - Fix: Don't overrise windowPointer, instead validate and require a match. JavaWindow must match! - Fix: Also validate chosen deviceid with JavaWindow's registered device Newt Build: - Added libXi in build recipe and doc
* HowToBuild: Add Debian 9 NotesSven Gothel2018-01-151-2/+20
|
* HowtoBuild: Update Debian 8.1.0 package recipe ..Sven Gothel2015-08-201-5/+15
|
* Bug 1149 - Replacing PCPP w/ JCPP: Update HowToBuild.htmlSven Gothel2015-03-241-2/+8
|
* Bug 682 - Relocating javax.media.opengl.* -> com.jogamp.opengl.* (Part 1)Sven Gothel2015-02-024-25/+25
| | | | | | | | | sed -i 's/javax\.media\.opengl/com\.jogamp\.opengl/g' `grep -Rl "javax\.media\.opengl" src` sed -i 's/javax\.media\.nativewindow/com\.jogamp\.nativewindow/g' `grep -Rl "javax\.media\.nativewindow" src` sed -i 's/javax\/media\//com\/jogamp\//g' `grep -Rl "javax/media/" src` sed -i 's/javax\/media\//com\/jogamp\//g' `grep -Rl "javax/media/" doc` Manually edited all occurences within make/**
* Bug 1079 - Remove symbolic link jogl/doc/boumlSven Gothel2014-10-081-1/+0
| | | | Symbolic links may cause problems on platform where such feature is not supported (Windows)
* doc/TODO.txt: Remove resolved tasksSven Gothel2014-09-181-3/+1
|
* HowToBuild: Debian i386 on x64: Add symbolic links for shared libsSven Gothel2014-09-031-0/+8
|
* HowToBuild: Revert required git version back to 1.6.0 (from 1.7.10, commit ↵Sven Gothel2014-08-281-1/+1
| | | | | | | 1882b6551326e583c311b6b169be2222125df4d9) git version 1.7.10 is not available on certail 'long life' / LTS systems, we have to reschedule the gluegen patch for a later time.
* HowToBuild: Bump requirements: ant >= 1.9.0, git >= 1.7.10Sven Gothel2014-08-281-5/+8
| | | | | | | | - ant >= 1.9.0 - Due to java8 build support - git >= 1.7.10 - Due to gluegen's new git query of HEAD branch and sha1-tip
* Merge remote-tracking branch 'github-mark/master' (Bug 1023/Bug 1024)Sven Gothel2014-07-052-4/+4
|\ | | | | | | | | | | | | Conflicts: make/scripts/tests.sh (build.xml: Using <copy tofile=".."/> instead of producing new jar files via <jar> to keep identity)
| * Attempt to remove aliasing from native libraries.Mark Raynsford2014-06-302-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Renamed: jogl-core.jar → jogl.jar nativewindow-core.jar → nativewindow.jar The build scripts have been edited to produce sets of natives for each "module" (as opposed to producing one set of natives and then have each module point to them via aliasing). Bug: 1023 Bug: 1024 Depends on 46faa59d439ef235d7691fc64d56eedc600ffa1a from gluegen.
* | HowToBuild: Add 'libudev-devel' for oculusvr-sdk sub-module compilationSven Gothel2014-07-031-3/+5
| |
* | Fix 'typo' in messages: 'Catched' -> 'Caught'Sven Gothel2014-06-281-1/+1
|/
* Bug 1021: Add OculusSDK binding / Basic OVR support (HowtoBuild.xml: Mention ↵Sven Gothel2014-06-201-0/+5
| | | | feature loss if not fetching submodules)
* Bug 1021: Adding submodule oculusvr-sdk and adjust HowToBuild (git clone ↵Sven Gothel2014-06-191-1/+1
| | | | --recurse-submodules <jogl-url>)
* Minor refinements: .gitignore HowToBuildSven Gothel2014-06-191-2/+2
|
* HowToBuild: ant 1.8.2 ; Complete GNU/Linux dependencies w/ openjdk, ant and ↵Sven Gothel2014-05-091-5/+27
| | | | p7zip, refine Debian 7 and 8 i386 on amd64 details
* Doc NEWT-Overview: Add notion about Window ParentingSven Gothel2014-03-141-0/+56
|
* doc/Platforms.txt: Update Virtualbox 4.3 Tests .. w/ Debian Host and Client ↵v2.1.52.1-maintSven Gothel2014-03-111-0/+28
| | | | (Wheezy Mesa 8.0.5-SW and Jessie Mesa 9.2.2-SW)
* doc/HowToBuild.html: Remove duplicate lineSven Gothel2014-02-151-2/+0
|
* doc/HowToBuild.html: Complete Debian package list, add note on multiarch ↵Sven Gothel2014-02-151-0/+13
| | | | packages
* Adaption of Oracle's Deployment changes, i.e. >= 7u51Sven Gothel2014-01-221-28/+18
| | | | | | | | | | Sadly, due to Oracle's Java Applet Plugin update 7u51, unsigned applets are no more allowed and effectively lower the bar to create user applets with raised privileges.<br/> Hence JogAmp Community <b>signs</b> jogl-all.jar and gluegen-rt.jar, which contain the JOGL's supporting classes as well as jogl-test.jar, which contains the applet class.<br/> jogl-test.jar's manifest file uses <i>Permissions: sandbox</i> to <b>not raise privileges</b>.
* Doc: JOGL-DEPLOYMENT Change 'Traditional Applets' to 'New Applets' (NApplet)Sven Gothel2014-01-212-2/+2
|
* HowToBuild: Add 'libxcursor-devel' dependency and a debian one-liner ..Sven Gothel2014-01-211-0/+5
|
* Bug 877 Concurrency Discussion: Update doc MultiThreading.txt, volatile ↵Sven Gothel2013-10-291-0/+31
| | | | field usage; GLDrawableImpl: Make read-only fields final.
* Updating doc AWTPrinting.txtSven Gothel2013-09-151-6/+14
|
* TiledPrintingAWTBase/doc: Add description of how-to add a 'print-to-file' ↵Sven Gothel2013-09-081-0/+11
| | | | printer driver on OSX
* doc/Implementation/AWTPrinting.txt: Adding ref to AWTPrintLifecycleSven Gothel2013-09-081-2/+4
|
* doc/Implementation/AWTPrinting: Update to match latest codeSven Gothel2013-09-081-21/+46
|
* Added AWTPrinting document ..Sven Gothel2013-09-061-0/+53
|
* Doc/HowToBuild: Windows x32 and x64 require new MingW64 Versions, tested w/ ↵Sven Gothel2013-08-311-11/+30
| | | | | | | | | | >= 4.8.1 - The previous MingW64 would still work, however we should align 32bit and 64bit versions - Mingw 32bit does not support dshow/com properly! - Use MingW64 32bit builds solve the problem
* Use uml's png files (svg font is broken)qun2013-07-231-4/+4
|
* Fix GLES3/GLES2 relation / Use bouml 4.21.1 (Note: SVG fonts .. are too ↵qun2013-07-2364-1941/+1502
| | | | tiny, using png)
* Doc: Overview/Evol .. embedded sizeSven Gothel2013-07-181-1/+1
|
* UML: Fix 'core' layout - more similar to 'all'Sven Gothel2013-07-1815-170/+161
|
* Doc: Overview/Evol: Fix embedded size / UML: Fix file attribsSven Gothel2013-07-1862-1/+1
|
* UML Doc: Fix separator ..Sven Gothel2013-07-186-382/+380
|
* UML Doc: Fix separator ..Sven Gothel2013-07-186-296/+296
|
* UML Doc: Fix alignment / separator ..Sven Gothel2013-07-1865-465/+481
|
* Doc: Update UML diagram and 'Overview-OpenGL-Evolution-And-JOGL'Sven Gothel2013-07-1867-1021/+2413
|
* Merge remote-tracking branch 'upstream/master'Petr Skramovsky2013-07-1745-1/+2
|\
| * Move doc/bouml -> doc/uml - and add symbolic link to doc/bouml ..Sven Gothel2013-07-1744-0/+1
| |
| * HowTo Build: Ubuntu -> DebianSven Gothel2013-06-091-1/+1
|/
* Notes: NVIDIA Tegra discard problem ; TestSharedContextVBOES2NEWT crashes ↵Sven Gothel2012-10-311-0/+11
| | | | the NV driver sporadically
* Seamless Integration of an FBObject based GLFBODrawable as ↵Sven Gothel2012-09-151-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GLOffscreenAutoDrawable.FBO and as an OffscreenLayerSurface's drawable (OSX) - Fix Bugs 569 and 599 Summary: ========= The new FBObject based GLFBODrawable implementation allows the seamless utilization of FBO offscreen rendering in single buffer, double buffer and MSAA mode. The GLFBODrawable uses a parent drawable based on a dummy surface to allow a GLOffscreenAutoDrawable.FBO creation or a mutable surface supporting an existing offscreen layer surface (OSX CALayer). Offscreen GLDrawable's and GLOffscreenAutoDrawable's can be selected via the GLCapabilities. If simply !onscreen is selected in the caps instance w/o enabling FBO, PBuffer or Bitmap, the factory will automatically choose regarding availability: FBO > PBuffer > Bitmap Double buffering is supported in MSAA more (intrinsic) and explicit in non MSAA. It is preferred when delivering resources (texture id's or framebuffer names) to a shared GLContext. This is demonstrated in (emulates our OSX CALayer implementation): TestFBOOffThreadSharedContextMix2DemosES2NEWT, TestFBOOnThreadSharedContext1DemoES2NEWT and with the OSX JAWT OffscreenLayerSurface itself. FBO is the preferred choice. +++ Offscreen drawables can be resized while maintaining a bound GLContext (e.g. w/ GLAutoDrawable). Previously both, drawable and context, needed to be destroyed and recreated at offscreen resize. Common implementation in GLDrawableHelper is used in the implementations (NEWT's GLWindow, AWT GLCanvas, SWT GLCanvas). +++ Tested: ======= Manually run all unit tests on: - Linux x86_64 NVidia/AMD/Mesa3d(ES) - OSX x86_64 NVidia - Windows x86_64 NVidia - Android arm Mali-400/Tegra-2 No regressions. Disclaimer: =========== This feature is committed almost in one patch. Both previous commits were introducing / fixing the capabilities behavior: 90d45928186f2be99999461cfe45f76a783cc961 9036376b7806a5fc61590bf49404eb71830de92f I have to appologize for the huge size and impact (files and platforms) of this commit however, I could not find a better way to inject this feature in one sane piece. NativeWindow Details: ===================== Complete decoupling of platform impl. detail of surfaces implementing ProxySurface. Used to generalize dummy surfaces and EGL surfaces on top of a native platform surface. - ProxySurface.UpstreamSurfaceHook -> UpstreamSurfaceHook - abstract class ProxySurface -> interface ProxySurface + ProxySurfaceImpl - Misc. implementations JOGL Details: ===================== FBOObject: API Change / Simplification & Usability - Removed reference counter to remove complexity, allow user to choose. - Add 'dispose' flag for detachColorbuffer(..), allowing to keep attachment alive - Fix equals operation of Attachment - Check pre-exising GL errors - Interface Colobuffer gets lifecycle methods - Add static factory methods to create Attachments w/o FBObject instance - Reset: - Clip min size to 1 - Keep alive samplingSink, i.e. don't issue resetMSAATexture2DSink(..). It gets called at syncFramebuffer()/use(..) later on before actual usage. This allows the consumer to utilize the GL_FRONT buffer until (e.g.) swap. - misc bugfixes GLOffscreenAutoDrawable: API Change - Reloc and interfacing - class com.jogamp.opengl.OffscreenAutoDrawable -> javax.media.opengl.* interfaces GLOffscreenAutoDrawable extends GLAutoDrawable GLOffscreenAutoDrawable.FBO extends GLOffscreenAutoDrawable, GLFBODrawable - Added general implementation and FBO specialization - Replacing GLPBuffer (deprecated) .. usable for any offscreen GLDrawable via factory GLAutoDrawable: - Add 'GLDrawable getDelegatedDrawable()' - Refine documentation of setContext(..), remove disclaimer and fixme tags GLDrawableFactory: - Refine API doc and it's selection mechanism for offscreen. - Add createOffscreenDrawable(..) - Add createOffscreenAutoDrawable(..) - Add canCreateFBO(..) - Mark createGLPbuffer(..) deprectated Mark GLPBuffer deprecated New: GLFBODrawable extends GLDrawable GLCanvas (AWT and SWT): Add offscreen resize support w/o GLContext recreation GLAutoDrawableBase .. GLWindow: - Add offscreen resize support w/o GLContext recreation - Remove double swapBuffer call - GLBase/GLContext: - Add: - boolean hasBasicFBOSupport() - boolean hasFullFBOSupport() - int getMaxRenderbufferSamples() - boolean isTextureFormatBGRA8888Available() GLContext: Fix version detection and hasGLSL() - Version detection in setGLFunctionAvailability(..) - Query GL_VERSION ASAP and parse it and compare w/ given major/minor - Use parsed version if valid and lower than given _or_ given is invalid. - Use validated version for caching (procaddr, ..), version number, etc. - Fix hasGLSL() Since 'isGL2ES2()' is true if 'isGL2()' and the latter simply alows GL 1.*, we confine the result to a GL >= 2.0 on desktops. FIXME: May consider GL 1.5 w/ extensions. - return isGL2ES2(); + return isGLES2() || + isGL3() || + isGL2() && ctxMajorVersion>1 ; GLDrawableImpl: - Add 'associateContext(GLContext, boolean)' allowing impl. to have a (weak) reference list of bound context. This is was pulled up from the OSX specific drawable impl. - swapBuffersImpl() -> swapBuffersImpl(boolean doubleBuffered) and call it regardless of single buffering. This is required to propagate this event to impl. properly, i.e. FBODrawable requires a swap notification. - Clarify 'contextMadeCurrent(..)' protocol GLDrawableHelper: - Add resize and recreate offscreen drawable util method - Simplify required init/reshape calls for GLEventListener - GLGraphicsConfigurationUtil: - fixWinAttribBitsAndHwAccel: Reflect sharede context hw-accel bits - OSX has no offscreen bitmap, use pbuffer - use proper offscreen auto selection if offscreen and no modes are set EGL Context/Drawable/DrawableFactory: Abstract native platform code out of base classes - Use EGLWrappedSurface w/ UpstreamSurfaceHook to handle upstream (X11, WGL, ..) lifecycle - in case the EGL resource is hooked up on it. Invisible dummy surfaces: All platforms - size is now reduced to 64x64 and decoupled of actual generic mutable size - fix device lifecycle, no more leaks +++ OSX ==== Enable support for GLFBODrawableImpl in offscreen CALayer mode - NSOpenGLImpl: hooks to calayer native code - calayer code: - allows pbuffer and texures (FBO) - decouple size and draw calls avoiding flickering - enable auto resize of calayer tree MacOSXCGLContext: - NSOpenGLImpl: - Fix false pbuffer 'usage', validate the pointer - If !pbuffer, copy other window mode bits of caps - MacOSXCGLGraphicsConfiguration: - Only assume pbuffer if !onscreen - Remove reference of native pixelformat pointer Native code: - use 'respondsToSelector:' query before calling 'new' methods avoiding an error message where unsuported (prev. OSX versions) - if monitor refresh-rate is queried 0, set to default 60hz - add missing NSAutoreleasePool decoration +++ Android / NEWT: =============== Issue setVisible(..) w/o wait, i.e. queue on EDT, @Android surfaceChanged() callback. Otherwise we could deadlock: setVisible(..) -> EDT -> setVisibleImpl(..) -> 'GL-display'. the latter may may cause havoc while Android-EDT is blocked [until it's return].
* crossref userguide/deploymentSven Gothel2012-08-212-5/+9
|
* Update TODO ; Update JOGL-DEPLOYMENT.html w/ new jar names and added appletsSven Gothel2012-08-212-34/+103
|
* Adding TODO note: Optimize/Fix NIO caching of glMapBuffer/glUnmapBufferSven Gothel2012-07-221-0/+4
|