| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Font::getAdvancedWidth(..) allows applications to query a glyphs width
with a given pixel size, as it is being used for rendering.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
API doc enhancements; Minor edits
- API doc added/enhanced:
- ShaderCode
- ShaderUtil
- NewtBaseActivity: Clarify method / var names
|
|
|
|
| |
f4ac27e177f6deb444280d3b375e7d343e38bd080 and eedb4b530fb83fc59a26962bcf7847a1404092a0
|
|
|
|
|
|
|
|
|
|
| |
int -> int[]
"texWidth desired texture width for multipass-rendering.
The actual used texture-width is written back when mp rendering is enabled, otherwise the store is untouched."
This allows the 'backend' to correct the texSize, ie in regards to GL_MAX_TEXTURE_SIZE .. etc.
Without this write-back, it would re-create the FBO for every frame.
|
|
|
|
| |
of IOException
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Graph Shader Simplification
- remove enable factor and 2nd 'discard' branch
- use build-in 'max'/'clamp' functions, supposed to be faster
Graph Shader 'a'/'b' redefined
- 'a' is 1-pass shader only
- 'b' is 2-pass incl. (1st pass + 2nd pass)
- Works well on ARM Mali-400 MP (Galaxy S2).
- Doesn't work on NV tegra2 (P1202: Texture's gl states do not match with shader's),
however 2-pass on mobile seems to be overkill for now.
We may create a workaround (switch shader ..).
GraphUI 2-pass demo;
- Propagate renderModes and texSize to UIShape's render(..)
- TODO: Remove GL dependency in UIShape, maybe use a callback or visitor model
- Adding GarpUI 2-pass launcher (Android and Standalone)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
ShaderState.getShaderState(gl)
This removes the dependency of a GLSL GLDataArray object to a specific ShaderState
and enables sharing of this VBO data, i.e. via a shared context.
Test: TestSharedContextVBOES2NEWT
|
|
|
|
|
|
|
|
|
|
| |
subdivde overlaping triangles for the case when 2 triangles intersect
either by vextex of Traingle A in Triangle B
or an edge in A intersects an edge in B
VectorUtil:
-added tri2triIntersection test (not optimized)
-added seg2segIntersection test (not optimized)
|
|
|
|
|
|
|
| |
subdivde overlaping triangles for the case of vertex inside
a off-curve boundary triangle.
added vertex in triangle test (using barycentric coordinates)
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
CDTriangulation moved to impl (jogamp.graph), where additional triangulations
or a wrapper to GLU triangulation can be added to triangulator.
TWO_PASS_RENDERING renamed to VBAA (algorithm name)
misc comments cleanups
|
| |
|
|
|
|
| |
GlyphShape and GlyphString use only OutlineShapes
|
| |
|
|
|
|
|
| |
Changed algo for in/out test of vertex wrt arbitrary polygon
to crossing test since angle based is shown prune to precision errors
|
| |
|
| |
|
|
|
|
| |
reader: Adding debug dump of font direction hint
|
| |
|
|
|
|
| |
object creation
|
| |
|
| |
|
| |
|
|
|
|
| |
e122b2f92b2302362569cdc9a67efd5750f46eb1
|
|
|
|
|
|
|
|
|
| |
OutlineShape:
- add clear()
- safe addEmptyOutline()
- fix addOutline(..)
- add addOutlineShape(OutlineShape)
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Region/GLRegion, ..
GLSL fix:
- allowing #version tag
- add uniform textureSize (ES2)
- fix int/float conversion
Region/GLRegion:
- non OpenGL Region and GL related GLRegion split
Region/Renderer renderModes bits (def. in Region)
- user creates a Renderer* impl .. and derive Region*'s from outline,
possibly from a different code path.
- to avoid mode explosion, a bit field is being used for now
- Renderer: remove flushCache(), since non caching impl. is intended,
or caching by an external user transparent object.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| | |
Implements more of John Pritchard <[email protected]> proposal
https://github.com/syntelos/jogl/commit/eadee0758babcddaa5eeaffbe046e1b09f9f550e
|
| |
| |
| |
| |
| | |
- throw InternalError() for CloneNotSupportedException case, which never happens
- AffineTransform clone() uses covariant return type as well, ie AffineTransform
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
transformation (cubic -> quadratic)
Impl. more of John Pritchard <[email protected]> proposal
https://github.com/syntelos/jogl/commit/05a7ec92d30e1e688b1eb7cc317cad83a0e8fd60
+++
More std. functionality (equals, deep clone) of AABBox, Vertex, Outline and OutlineShape.
Simplify Vertex:
- Remove 2 component constructor
- Add on-curve in Vertex.Factory / Constructor
- Adding equals(Object)
- Remove Comparable/compareTo, since we only can make an equals statement
Outline/OutlineShape: Handle dirty flag for boundary (new set/remove operation)
OutlineShape: Better in-place transformation (cubic -> quadratic)
|
|/
|
|
| |
<[email protected]> https://github.com/syntelos/jogl/commit/05a7ec92d30e1e688b1eb7cc317cad83a0e8fd60#L0R59)
|
|
|
|
|
|
|
|
|
|
| |
Seperate texcoords from shaprness
Added NonUniform weight shader impl for region impl only (not text)
Refactor p1y --> weight (equiv to nurbs weight)
cleanup shader uniforms (rename/remove unneeded)
Enhanced blending of text
GPURegionNewtDemo01 - added weight W/Q to manipulate weight
refactor r2t --> vbaa (matching algorithm name)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
function; switch program enh. ; Graph lifecycle
Add 'ownUniform()/ownAttribute()' allowing to reset all bound uniforms/attributes,
not just active ones plus handling the lifecycle of the owned attributes (destroy).
This simplifies the lifecycle of all shader attributes.
Rename glFunction -> function .. well, the GL attribute marks them GL related already
Switch program enhancement. If switching to new program (unlinked), issue glBindAttributeLocation ..
Graph lifecycle cleanup using the above ..
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Pass the current GL context object where it's required
- Introduce RenderState (which has ShaderState) to acquire/change shader related data (Region)
- Shader Cleanup: User import for common stuff; use req. version
- Reduce/remove data copy/recreation in *Region implementation
- UI/RIButton: Use defaults I like :)
|
| |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Destroy removed ones
- Handle overwrite/update on same key
- Clarified names (size/limit)
- Handle cache limit unlimited (limit := -1) and no cache (limit := 0)
- Default cache limit := 256
- Comments
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
createString function is now public to be able to create a string
without initializing textRenderer. Temp change, should be cleaned up.
added missing scale transformation to renderer pmvmatrix;
added glyphstring.getBounds() so not to use font.getStringBounds.
since it Would be a redundant call.
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
| |
dispose/disposeImpl sequence;
Use shaderProgram.program() instead of shaderProgram.id() - the id() is just a unique sequence name.
Call glBindAttribLocation() after program object init and before linkage.
Chain call disposeImpl() properly to fix destruction sequence:
TextRendererImpl01 -> TextRenderer -> GlyphString -> Region
RegionRendererImpl01 -> RegionRenderer -> Region
|