| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Note that invisible shapes are still considered for picking/activation.
To completely mute the shape, issue {@link #setInteractive(boolean)} as well.
|
|
|
|
|
|
|
|
|
| |
traversing through all Glyphs
See UISceneDemo03
new Button(options.renderModes, fontSymbols, " "+fontSymbols.getUTF16String("pause")+" ", buttonWidth, buttonHeight); // pause
Unicode codepoint symbol is also contained in FontGlyph
|
|
|
|
| |
at least add an empty region to avoid an NPE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
agnostic (PMVMatrix, Matrix4f, Vec4f, ..)
Math functionality (PMVMatrix, Matrix4f, Vec4f, ..)
- shall be used toolkit agnostic, e.g. independent from OpenGL
- shall be reused within our upcoming Vulkan implementation
- may also move outside of JOGL, i.e. GlueGen or within its own package to be reused for other purposed.
The 'com.jogamp.opengl.util.PMVMatrix' currently also used to feed in GLUniformData
via the toolkit agnostic SyncAction and SyncBuffer
shall also be split to a toolkit agnostic variant.
An OpenGL PMVMatrix specialization implementing GLMatrixFunc can still exist,
being derived from the toolkit agnostic base implementation.
+++
Initial commit .. compile clean, passing most unit tests.
|
| |
|
|
|
|
|
|
| |
non-contour/whitespace Glyphs (detect and allow to skip 'em)
We also drop shapes for both, but for id 0 (unknown).
|
|
|
|
| |
variants
|
|
|
|
| |
if (rect) border is present
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
addShapeToRegion() impl to utilize OutlineShape -> GLRegion ctor w/ proper buffer-size
This way we avoid unnecessary buffer growth and allow creation of 'always' fitting buffer sizes.
+++
Update or freshly create the GLRegion, while allocating its buffers with given initial `vertexCount` and `indexCount`.
Method shall be invoked by the addShapeToRegion(GLProfile, GL2ES2) implementation before actually adding the OutlineShape to the GLRegion.
addShapeToRegion(GLProfile, GL2ES2) is capable to determine initial `vertexCount` and `indexCount` buffer sizes,
as it composes the OutlineShapes to be added.
updateGLRegion(GLProfile, GL2ES2, TextureSequence, OutlineShape) maybe used for convenience.
In case GLRegion is `null`, a new instance is being created.
In case the GLRegion already exists, it will be either cleared if the GL2ES2 `gl` instance is not `null`
or earmarked for deletion at a later time and a new instance is being created.
|
|
GL/VK abstraction at a later time differently
Actual GPU rendering toolkit dependency can be abstracted differently, i.e. GPU <- { GL, VK } etc.
|