summaryrefslogtreecommitdiffstats
path: root/src/demos/com/jogamp/opengl
Commit message (Collapse)AuthorAgeFilesLines
* GraphUI Demo UISceneDemo03: Add kerning and compensate on label 0/0 origin ↵Sven Gothel2023-03-281-8/+22
| | | | using Glyph bounds minY()
* GraphUI Demo UISceneDemo02: Use em-sized label w/ scale.Sven Gothel2023-03-281-8/+8
|
* GraphUI: Decouple GraphShape from Shape, i.e. allow future Shape w/o ↵Sven Gothel2023-03-286-91/+99
| | | | Graph/GLRegion
* GraphUI Demos: Remove unused GPUUISceneTextAnim01Sven Gothel2023-03-281-303/+0
|
* Graph FontScale: Simplify names, fix API doc and add unit testSven Gothel2023-03-284-4/+4
|
* Graph Font: Rename getBBox*() -> getBounds*() to preserve a common semantic nameSven Gothel2023-03-271-1/+1
|
* GraphUI Demos: (Text) Type Animation ...Sven Gothel2023-03-222-0/+697
|
* UISceneDemo0[01]: Useless minor editing (can't move animator lower as sadly ↵Sven Gothel2023-03-222-2/+1
| | | | used in our window dtor event handler)
* Graph Font Processing: Use Font.GlyphVisitor instead of ↵Sven Gothel2023-03-221-4/+4
| | | | OutlineShape.Visitor, allowing to use the Glyph (information).
* GraphUI Demos: Adopt to shapesSharpness -> oshapesSharpness renameSven Gothel2023-03-227-7/+7
|
* GraphUI: Fix Scene.PMVMatrixSetup impl: Setup modelview before using ↵Sven Gothel2023-03-212-4/+8
| | | | setPlanBox(..)'s gluUnProject(..)
* GraphUI UISceneDemo20: Consolidate the actual implementation and main ↵Sven Gothel2023-03-214-229/+197
| | | | launcher to our new UISceneDemo naming series
* GraphUI UISceneDemo*: Stop animation loop if window got destroyedSven Gothel2023-03-212-4/+4
|
* GraphUI UISceneDemo*: Add windowResized() callback to update window title ↵Sven Gothel2023-03-213-5/+12
| | | | showing current surfaceSize
* GraphUI UISceneDemo*: Use lambdas for GLAutoDrawable.invoke(..) to reduce LOCSven Gothel2023-03-212-12/+6
| | | | GLAutoDrawable.invoke(..) API doc: Add semantics about GLRunnable return value.
* Graph: Cleanup Vertex.Factory referencing: Only bind to OutlineShape and use ↵Sven Gothel2023-03-2116-101/+73
| | | | | | | its default. GraphUI: Always use default. Graph RegionRenderer, its RenderState as well as GraphUI's Scene don't need to have knowledge of Vertex.Factory, which is only used within OutlineShape and its 'inner geom workings'.
* GraphUI Shape: Provide empty default implementation for clearImpl() and ↵Sven Gothel2023-03-205-40/+0
| | | | destroyImpl()
* Rename UISceneDemo{02->10}Sven Gothel2023-03-201-2/+2
|
* GraphUI Demos: Bring back GPUUISceneGLListener0A ..Sven Gothel2023-03-201-71/+104
| | | | | | | | | | | | | | | | | | | | - Contrary to UISceneDemo0[01], here we - Call the Scene GLEventListener methods manually - Issue glClear* ourselves - Using own PMVMatrixSetup - gluPerspective like Scene's default - no normal scale to 1, keep distance to near plane for rotation effects. We scale Shapes - translate origin to bottom-left - Scale Button not by screen-size but Scene.getBounds() dimension, hence issue setupUI() from reshape() and not from init() - GLButton: Using additional view-rotation like UISceneDemo01 - Multi-line text labels resize issues are - Supposed sticky-edge is moving (Sticky-edge are the opposites of the picked drag point)
* GraphUI UISceneDemo01: Stop rotating animation if GLButton animation is ↵Sven Gothel2023-03-201-22/+22
| | | | toggled off
* UISceneDemo02: The 'dirty' variant w/ listener (printf) attachedSven Gothel2023-03-201-250/+85
|
* UISceneDemo01: Use GLButton shape w/ animating and rotating gears and set up ↵Sven Gothel2023-03-201-180/+150
| | | | an own Scene.PMVMatrixSetup with a plane dimension of 100
* GraphUI Default Scene.PMVMatrixSetup: Scale (back) projection to have ↵Sven Gothel2023-03-201-4/+21
| | | | normalized plane dimensions, 1 for the greater of width and height
* Demos GearsES2: Expose view rotation vars and listenerSven Gothel2023-03-201-1/+14
|
* Demo MovieSimple: Default to useOrigScale=false, enable @ main w/ -orig_scaleSven Gothel2023-03-191-4/+4
|
* GraphUI: Add UISceneDemo00 for linear animation in one main function; ↵Sven Gothel2023-03-192-46/+192
| | | | UISceneDemo01 simply provides shape drag-move and -resize
* GraphUI Shape win<->obj/shape mapping: Return actual int[] or float[] result ↵Sven Gothel2023-03-194-75/+47
| | | | or null on error instead of boolean to easy API usage
* GraphUI UISceneDemo01: Fix disposal, use windowDestroyed() WindowListener to ↵Sven Gothel2023-03-191-2/+1
| | | | stop animator
* GraphUI UISceneDemo01: Res independent Shape, in Scene attached to GLWindow ↵Sven Gothel2023-03-191-19/+14
| | | | showing simple linear Shape movement w/ listener attached
* Graph UI: Apply API changes to demos *WIP* (not all working yet, but compile ↵Sven Gothel2023-03-197-265/+675
| | | | clean)
* Graph UI: Adopt Shape implementations to Shape API changes (simplification)Sven Gothel2023-03-195-10/+10
|
* Fix MovieSimple regression of commit ↵Sven Gothel2023-03-194-5/+19
| | | | 00dbacc5af3531af50e77a02d534dc11e08de10f, 913b00f8b876e29af91677ef61b3eb35d6853e6e
* Graph: Make RenderState a composition of RegionRenderer, which also creates ↵Sven Gothel2023-03-1510-62/+40
| | | | and destroys it. Dropping this also from user (complexity).
* Demos: Minor cleanups; MovieSimple: Remove unused variables etc .. left over ↵Sven Gothel2023-03-154-23/+2
| | | | from transition to use TextureSequenceES2
* GraphUI: Scene/Shape: Decouple PMVMatrix operations (picking, obj<->win) by ↵Sven Gothel2023-03-154-73/+71
| | | | | | | | using a local instance, enable performing on any thread (not using a blocking GL renderer thread) Shape got 2 win<->obj and size-retrieval variants: (a) using given PMVMatrix and viewport (b) using a local PMVMatrix w/ Scene's viewport and using Scene's setupMatrix()
* GraphUI: Complete rename of UISceneDemo01Sven Gothel2023-03-151-14/+6
|
* GLMediaPlayer usage: Fix verbose strings, disable verbose in GraphUI demosSven Gothel2023-03-153-4/+4
|
* GraphUI: Rename UISceneDemo00 -> UISceneDemo01Sven Gothel2023-03-151-0/+0
|
* Graph: Have RegionRenderer.reshapeNotify(..) track x/y as well (vieport); ↵Sven Gothel2023-03-143-19/+18
| | | | GraphUI.Scene using RegionRenderer's viewport (no duplicate)
* GraphUI: Add a most simple Scene demo with one Shape.Sven Gothel2023-03-141-0/+358
|
* GPUUISceneGLListener0A: Simplify according to Scene class changes ↵Sven Gothel2023-03-142-129/+76
| | | | (view-based in model-space), have Scene manage resources in full.
* GraphUI: UIShapeDemo01.reshape(): Drop redundant glViewport(..) callSven Gothel2023-03-141-1/+0
|
* GraphUI: GLButton: Don't pass FBO size @ ctor, calculate true view-size @ ↵Sven Gothel2023-03-141-2/+1
| | | | 1st draw
* TextureSequence (API Change): Use setTextureLookupFunctionName(..) ↵Sven Gothel2023-03-143-3/+3
| | | | explicitly to set the name upfront, clarifying workflow. Impl: ImageSequence + GLMediaPlayerImpl
* GLMediaPlayer: Overhaul and simplify states, allow usage before stream ready ↵Sven Gothel2023-03-1313-472/+576
| | | | | | | | | | | | | | | showing test-texture. Adding stop(); (API Change) - allow multiple initGL(..) @ uninitialized and initialized - allows usage before stream is ready - using a test-texture @ uninitialized - adding stop() API change - initStream() -> playStream() - play() -> resume() FFMPEG: Added 'ready' check for robustness
* Demos: FontSetDemos: Remove remove fontsSven Gothel2023-03-111-10/+0
|
* Demos: Remove unused fontsSven Gothel2023-03-119-0/+0
|
* Cleanup Demos: Move demos to jogl-demos.jar (here Graph + AudioVideo), ready ↵Sven Gothel2023-03-1172-6/+13997
| | | | for easy deployment and test w/ junit/ant
* GLArrayData: Promote sealed() from GLArrayDataEditable, to correctly being ↵Sven Gothel2023-03-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | used for getElemCount() instead of 0==position, ... (API change) API Change - sealed() moved up from GLArrayDataEditable -> GLArrayData - GLArrayDataWrapper is sealed by default - getSizeInBytes() -> getByteCount() - Semantics of getElemCount() and getByteCount() - Correctly use sealed() to switch from position to limit - instead of 0==position Aligned method names: - getElemCount() - elemPosition() - remainingElems() - getElemCapacity() to corresponding byte counts: - getByteCount() - bytePosition() - remainingBytes() - getByteCapacity()
* GLArrayData*: Shorten methods (*API Change*), use proper constructor and ↵Sven Gothel2023-02-241-1/+1
| | | | | | | | | | | | | finalize immutables, add growthFactor (default golden ratio 1.618), add getCapacity*() and printStats(..) The growthFactor becomes essential for better growth behavior and can be set via setGrowthFactor(). The other changes were merely to clean up the GLArrayData interface and its 4 implementations. Not great to change its API, but one name was misleading ['getComponentCount' -> 'getCompsPerEleme'], so overall .. readability is enhanced. Motivation for this change was the performance analysis and improvement of our Graph Curve Renderer.