summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* GraphUI GLButton: Add missing destroyImpl(..) to destroy the ImageSequence ↵Sven Gothel2023-03-201-0/+6
| | | | and FBO-GLAD
* Demos GearsES2: Expose view rotation vars and listenerSven Gothel2023-03-201-1/+14
|
* GLOffscreenAutoDrawable: Remove unused importSven Gothel2023-03-201-2/+0
|
* Add FloatUtil.isZero(float) using FloatUtil.EPSILONSven Gothel2023-03-201-0/+8
|
* 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-194-46/+260
| | | | UISceneDemo01 simply provides shape drag-move and -resize
* GraphUI Shape win<->obj/shape mapping: Return actual int[] or float[] result ↵Sven Gothel2023-03-198-120/+152
| | | | 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 Shape: Remove debug println @ mouse drag releaseSven Gothel2023-03-191-1/+0
|
* Graph UI: Apply API changes to demos *WIP* (not all working yet, but compile ↵Sven Gothel2023-03-199-268/+680
| | | | clean)
* Graph UI: Adopt Shape implementations to Shape API changes (simplification)Sven Gothel2023-03-1914-44/+38
|
* Graph UI Shape: Fix move and resize via 1-pointer mouse drag: Need to apply ↵Sven Gothel2023-03-191-32/+33
| | | | | | scale on drag-delta, operating on scaled-model-viewpoint Further, on resize, we have different sticky edges for either bottom-right or bottom-left drag resize.
* Graph UI Shape: Fix setTransform(): Take back unscaled-center 1st, then add ↵Sven Gothel2023-03-191-2/+4
| | | | back later (scaled); TODO: Add alignment features
* Graph Shape: Add onMove(Shape.Listener), allowing user to track Shape movementSven Gothel2023-03-191-2/+15
|
* Add Scene.PMVMatrixSetup for programmable PMVMatrix setup in Scene replacing ↵Sven Gothel2023-03-192-280/+301
| | | | | | | | | | | | | | | | | | | fixed projection params; Simplify API requirements .. Scene: - Add Scene.PMVMatrixSetup and use it throughout Scene/Shape for reshape(), setupMatrix() and Shape's win<->obj coordinate mappings. - Default Scene.PMVMatrixSetup is no more moving origin to bottom-left, kept at screen-center. - Add waitUntilDisplayer(), allowing to wait until 1st display is completed, ensuring certain states are well set (init, reshape and 1st display on Shapes, plane-box, ..) Shape: - Rename setPosition() -> moveTo() - Add getBounds(GLProfile) to retrieve AABBox before rendering, - Enhance validateImpl(..) to allow this mode @ initial validation (only)
* Graph Scene: RegionRenderer is owned and never nullSven Gothel2023-03-191-18/+6
|
* Graph Shape: Add missing drawGLSelect(..)Sven Gothel2023-03-191-0/+5
|
* Graph Shape: Mark methods final and enhance API docSven Gothel2023-03-191-28/+55
|
* Graph Scene: Customize clearColor + clearMask used @ display(..), i.e. ↵Sven Gothel2023-03-191-3/+35
| | | | either use custom setting or avoid it at all for seamless client renderer integration
* Graph: Scene: Add experimental pickShapeGL(..), i.e. glSelect (Not working ↵Sven Gothel2023-03-191-10/+117
| | | | correctly with all renderModes yet, inactive; Not good on text)
* Graph: Add RegionRenderer.enable(..) variant w/ passing enable + disable ↵Sven Gothel2023-03-191-4/+15
| | | | GLCallback
* Graph: GLRegion.draw(): Mod curRenderModes by sampleCount { 0 = no-sampling, ↵Sven Gothel2023-03-191-1/+19
| | | | -1 = glSelect } (Experimental not working fully)
* Graph: GLRegion: Pass curRenderModes to updateImpl() + drawImpl(), prepare ↵Sven Gothel2023-03-195-73/+112
| | | | switch by sampleCount; Don't use any resource not requested by curRenderModes
* Graph : Misc API docSven Gothel2023-03-192-2/+5
|
* Graph: Add RenderState API doc; RegionRenderer: Remove unused shell method, ↵Sven Gothel2023-03-192-6/+8
| | | | left over from f8584748e33aab56780eca5cf7009a5a0d11991d
* Fix MovieSimple regression of commit ↵Sven Gothel2023-03-194-5/+19
| | | | 00dbacc5af3531af50e77a02d534dc11e08de10f, 913b00f8b876e29af91677ef61b3eb35d6853e6e
* NEWT MouseEvent.getEventTypeString(): Shorten by removing leading 'EVENT_MOUSE_'Sven Gothel2023-03-191-8/+8
|
* API doc cleanup, add + refine math testsSven Gothel2023-03-1922-29/+586
| | | | API doc
* Graph: Make RenderState a composition of RegionRenderer, which also creates ↵Sven Gothel2023-03-1524-180/+205
| | | | and destroys it. Dropping this also from user (complexity).
* ShaderProgram field programLinked: Set to false @ release()/destroy(), On ↵Sven Gothel2023-03-151-1/+5
| | | | useProgram() only throw exception if 'on==true' is requested (disabling after delettion is OK)
* opengl/util/glsl/Shader*: Mark classes and fields final, rename ↵Sven Gothel2023-03-154-22/+41
| | | | dump{Shader->}Source(), refine string output.
* Fix ShaderProgram ownership bug, introduced in commit ↵Sven Gothel2023-03-156-70/+45
| | | | | | | | | 67a723477ecd818fbc5859fe20ee536a3b4efae5 (reverting and clarifying) All Graph ShaderPrograms used are owned by RegionRenderer, not RenderState nor [GL]Region*, hence [GL]Region* shall only nullify the resources but not destroy the shader currently in use. One RegionRenderer maybe used for multuple Regions.
* 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-157-184/+220
| | | | | | | | 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-154-6/+6
|
* GraphUI: Rename UISceneDemo00 -> UISceneDemo01Sven Gothel2023-03-152-2/+2
|
* Graph: Have RegionRenderer.reshapeNotify(..) track x/y as well (vieport); ↵Sven Gothel2023-03-148-83/+153
| | | | GraphUI.Scene using RegionRenderer's viewport (no duplicate)
* GraphUI: Add a most simple Scene demo with one Shape.Sven Gothel2023-03-142-0/+360
|
* 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: Label: Rename pixelSize -> pixelScale, since we are view-based or ↵Sven Gothel2023-03-141-9/+10
| | | | in model-space.
* GraphUI: MediaButton: No need to re-create GLRegion (anymore), just ↵Sven Gothel2023-03-141-5/+1
| | | | markShapeDirty() to force reupload of texture-coordinates; Also don't mute audio, user shall configure the GLMediaPlayer...
* GraphUI: UIShapeDemo01.reshape(): Drop redundant glViewport(..) callSven Gothel2023-03-141-1/+0
|
* GraphUI: Button: Allow user to configure 2-pass label z-offsetSven Gothel2023-03-141-2/+10
|
* GraphUI: GLButton: Don't pass FBO size @ ctor, calculate true view-size @ ↵Sven Gothel2023-03-142-6/+12
| | | | 1st draw
* GraphUI: Scene: Add simplified ctor w/ user defined zNear, zFar and ↵Sven Gothel2023-03-142-54/+191
| | | | sceneDistance; Expose the scene-plane AABBox and add surfaceToObjSize() to compute surface-size in object coords.
* Graph: RegionRenderer: Adopt to TextureSequence API Change: Use ↵Sven Gothel2023-03-141-9/+8
| | | | setTextureLookupFunctionName(..) before using hash and/or code.
* Graph: Region: Add API doc on markStateDirty() and markShapeDirty()Sven Gothel2023-03-141-5/+13
|
* AABBox: Add API doc comment on reset() and hence default ctor regarding ↵Sven Gothel2023-03-141-3/+10
| | | | infinite dimension