Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Graph*: API doc refinement | Sven Gothel | 2023-03-30 | 1 | -1/+1 |
| | |||||
* | Vec2f, Vec3f: Return this @ set(..), add set(float[]) and add(float, ..) | Sven Gothel | 2023-03-30 | 2 | -22/+60 |
| | |||||
* | Graph Font: TypecastFont: getGlyphBoundsFU() + processString(): If ↵ | Sven Gothel | 2023-03-28 | 1 | -4/+6 |
| | | | | isWhitespace() continue w/ AABBox resize, but don't earmark this (whitespace) glyph for next left_glyph (kerning). | ||||
* | Graph RenderState: Add setColorStatic(float[]) variant | Sven Gothel | 2023-03-28 | 1 | -0/+3 |
| | |||||
* | Graph Font.GlyphVisitor*: Pass 'char symbol' to visitor, passing full ↵ | Sven Gothel | 2023-03-28 | 4 | -10/+11 |
| | | | | text-processing information | ||||
* | Graph Font.Glyph: Add getFont() (the owner) | Sven Gothel | 2023-03-28 | 2 | -0/+8 |
| | |||||
* | Graph FontScale: Simplify names, fix API doc and add unit test | Sven Gothel | 2023-03-28 | 1 | -27/+102 |
| | |||||
* | Graph Font: Rename getBBox*() -> getBounds*() to preserve a common semantic name | Sven Gothel | 2023-03-27 | 4 | -14/+14 |
| | |||||
* | Graph: Fix Font.getGlyphBoundsFU(): FU of advance is requested here. | Sven Gothel | 2023-03-27 | 1 | -1/+1 |
| | | | | Regression from commit a5d593478afa2298282a0624b2490fde84c3a292 | ||||
* | Quaternion: Shorten toString() type name | Sven Gothel | 2023-03-27 | 1 | -1/+2 |
| | |||||
* | Add Vec2f and Vec3f, to support a more simple OO vector-math usage, e.g. for ↵ | Sven Gothel | 2023-03-22 | 2 | -0/+528 |
| | | | | | | | | animation etc Implementation borrowed my 'gfxbox2' C++ project <https://jausoft.com/cgit/cs_class/gfxbox2.git/tree/include/pixel/pixel3f.hpp#n29> and its layout from OpenAL's Vec3f. | ||||
* | Graph: Remove OutlineShape.Visitor* as being replaced by Font.GlyphVisitor | Sven Gothel | 2023-03-22 | 2 | -24/+1 |
| | | | | (We may ressurect them if needed for a future use case) | ||||
* | Graph Font Processing: Use Font.GlyphVisitor instead of ↵ | Sven Gothel | 2023-03-22 | 5 | -28/+78 |
| | | | | OutlineShape.Visitor, allowing to use the Glyph (information). | ||||
* | Graph Font Processing: Produce a 'whitespace' Glyph w/ an OutlineShape (box) ↵ | Sven Gothel | 2023-03-22 | 3 | -5/+76 |
| | | | | to allow better handling of such non-contour symbols. | ||||
* | GraphUI UISceneDemo*: Use lambdas for GLAutoDrawable.invoke(..) to reduce LOC | Sven Gothel | 2023-03-21 | 1 | -0/+7 |
| | | | | GLAutoDrawable.invoke(..) API doc: Add semantics about GLRunnable return value. | ||||
* | Graph: Cleanup Vertex.Factory referencing: Only bind to OutlineShape and use ↵ | Sven Gothel | 2023-03-21 | 4 | -54/+29 |
| | | | | | | | 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'. | ||||
* | GLArrayDataClient: Allow null buffer @ growIfNeeded(), removed from commit ↵ | Sven Gothel | 2023-03-20 | 1 | -20/+1 |
| | | | | | | 90a95e6f689b479f3c3ae3caf4e30447030c7682 A null buffer is possible in case initialElementCount at ctor is <= 0 | ||||
* | GLOffscreenAutoDrawable: Remove unused import | Sven Gothel | 2023-03-20 | 1 | -2/+0 |
| | |||||
* | Add FloatUtil.isZero(float) using FloatUtil.EPSILON | Sven Gothel | 2023-03-20 | 1 | -0/+8 |
| | |||||
* | Graph: Add RegionRenderer.enable(..) variant w/ passing enable + disable ↵ | Sven Gothel | 2023-03-19 | 1 | -4/+15 |
| | | | | GLCallback | ||||
* | Graph: GLRegion.draw(): Mod curRenderModes by sampleCount { 0 = no-sampling, ↵ | Sven Gothel | 2023-03-19 | 1 | -1/+19 |
| | | | | -1 = glSelect } (Experimental not working fully) | ||||
* | Graph: GLRegion: Pass curRenderModes to updateImpl() + drawImpl(), prepare ↵ | Sven Gothel | 2023-03-19 | 5 | -73/+112 |
| | | | | switch by sampleCount; Don't use any resource not requested by curRenderModes | ||||
* | Graph : Misc API doc | Sven Gothel | 2023-03-19 | 2 | -2/+5 |
| | |||||
* | Graph: Add RenderState API doc; RegionRenderer: Remove unused shell method, ↵ | Sven Gothel | 2023-03-19 | 2 | -6/+8 |
| | | | | left over from f8584748e33aab56780eca5cf7009a5a0d11991d | ||||
* | API doc cleanup, add + refine math tests | Sven Gothel | 2023-03-19 | 8 | -18/+36 |
| | | | | API doc | ||||
* | Graph: Make RenderState a composition of RegionRenderer, which also creates ↵ | Sven Gothel | 2023-03-15 | 3 | -33/+120 |
| | | | | and destroys it. Dropping this also from user (complexity). | ||||
* | ShaderProgram field programLinked: Set to false @ release()/destroy(), On ↵ | Sven Gothel | 2023-03-15 | 1 | -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 Gothel | 2023-03-15 | 4 | -22/+41 |
| | | | | dump{Shader->}Source(), refine string output. | ||||
* | Fix ShaderProgram ownership bug, introduced in commit ↵ | Sven Gothel | 2023-03-15 | 6 | -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. | ||||
* | Graph: Have RegionRenderer.reshapeNotify(..) track x/y as well (vieport); ↵ | Sven Gothel | 2023-03-14 | 2 | -8/+13 |
| | | | | GraphUI.Scene using RegionRenderer's viewport (no duplicate) | ||||
* | Graph: RegionRenderer: Adopt to TextureSequence API Change: Use ↵ | Sven Gothel | 2023-03-14 | 1 | -9/+8 |
| | | | | setTextureLookupFunctionName(..) before using hash and/or code. | ||||
* | Graph: Region: Add API doc on markStateDirty() and markShapeDirty() | Sven Gothel | 2023-03-14 | 1 | -5/+13 |
| | |||||
* | AABBox: Add API doc comment on reset() and hence default ctor regarding ↵ | Sven Gothel | 2023-03-14 | 1 | -3/+10 |
| | | | | infinite dimension | ||||
* | GLMediaPlayerImpl: Only kick-off StreamWorker at initGL(..) | Sven Gothel | 2023-03-14 | 1 | -5/+0 |
| | |||||
* | GLMediaPlayerImpl: Zero textureFragmentShaderHashCode and default ↵ | Sven Gothel | 2023-03-14 | 1 | -6/+3 |
| | | | | lookupFunction on Uninitialized state | ||||
* | FFMPEGMediaPlayer: More detailed DEBUG messages on audioSink | Sven Gothel | 2023-03-14 | 1 | -3/+3 |
| | |||||
* | TextureSequence (API Change): Use setTextureLookupFunctionName(..) ↵ | Sven Gothel | 2023-03-14 | 4 | -31/+77 |
| | | | | explicitly to set the name upfront, clarifying workflow. Impl: ImageSequence + GLMediaPlayerImpl | ||||
* | GLRegion + RegionRenderer: Add clearShader(..) to delete all ShaderPrograms ↵ | Sven Gothel | 2023-03-13 | 6 | -12/+59 |
| | | | | and is references. | ||||
* | GLMediaPlayerImpl: isTextureAvailable() is always true after lastFrame init; ↵ | Sven Gothel | 2023-03-13 | 1 | -2/+6 |
| | | | | Use private isPausedOrPlaying() to determine shaderCodeHash | ||||
* | Graph: Add GLRegion creation w/ pre-calculating its buffer sizes; ↵ | Sven Gothel | 2023-03-13 | 2 | -2/+60 |
| | | | | | | TextRegionUtil: Use pre-calc'ing buffer sizes for GLRegion; TextRendererGLELBase: Fix temp AffineTransform usage | ||||
* | GLMediaPlayer: Overhaul and simplify states, allow usage before stream ready ↵ | Sven Gothel | 2023-03-13 | 9 | -96/+242 |
| | | | | | | | | | | | | | | | 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 | ||||
* | Move png assets (NEWT icons + GLMediaPlayer dummy/test) to simple classpath, ↵ | Sven Gothel | 2023-03-13 | 2 | -1/+1 |
| | | | | allowing access w/o jars. TODO: Test Android. | ||||
* | Misc: Add MonitorDevice.perMMToPerInch(..); Drop unused ↵ | Sven Gothel | 2023-03-09 | 1 | -3/+2 |
| | | | | RegionRenderer.init(..) renderModes argument | ||||
* | Merge pull request #110 from gbburkhardt/master | Göthel Software | 2023-03-08 | 1 | -1/+7 |
|\ | | | | | Fix for AWT GLCcanvas DPI scaling. Forum thread https://forum.jogamp… | ||||
| * | Fix for AWT GLCcanvas DPI scaling. Forum thread ↵ | Glenn Burkhardt | 2023-03-06 | 1 | -1/+7 |
| | | | | | | | | https://forum.jogamp.org/DPI-scaling-not-working-td4042206.html | ||||
* | | Rename NonFSAAGLCapabilitiesChooser -> NonFSAAGLCapsChooser (too long) | Sven Gothel | 2023-03-08 | 1 | -3/+3 |
| | | |||||
* | | Apply NonFSAAGLCapabilitiesChooser in NEWTGLContext (tests only). TODO: ↵ | Sven Gothel | 2023-03-08 | 1 | -3/+14 |
| | | | | | | | | Consider applying it in default chooser? | ||||
* | | Graph: Font: Add equals() + hash() API doc; GraphUI's Label*.setText(): Only ↵ | Sven Gothel | 2023-03-08 | 2 | -2/+19 |
| | | | | | | | | modify values if text and/or font differs, skipping markShapeDirty() saves performance. | ||||
* | | Graph GPUUISceneNewtDemo: Filter out all FSAA (multisample) caps if ↵ | Sven Gothel | 2023-03-08 | 1 | -0/+73 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | undesired (Graph VBAA + MSAA); Add NonFSAAGLCapabilitiesChooser Notable: On RaspiPi4b w/ Mesa3D's Broadcom/VC driver, the chosen capabilities is a multisamnple one even though not requested. This causes - extra performance overhead - doubled AA: 1st our VBAA, then the FSAA (multisample) -> loss of sharpness Simply dropping the undersired FSAA helps and ups performance on the Raspi board (22 -> 35 fps). | ||||
* | | [GL]Capabilities*: Enhance identity-check in root Capabilities.equals(..), ↵ | Sven Gothel | 2023-03-08 | 1 | -0/+14 |
| | | | | | | | | | | | | | | | | | | | | comparing the VisualID first; Added VisualIDHolder.isVisualIDSupported(VIDType) We cannot accept 2 capabilities with different VisualID but same attributes otherwise accepted as equal, since the underlying windowing system uniquely identifies them via their VisualID. Such comparison is used in certail GLAutoDrawable implementations like AWT GLCanvas to determine a configuration change etc. |