aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/jogamp/graph
Commit message (Collapse)AuthorAgeFilesLines
* Adapt to GlueGen commit 1468286bf569a493e4fdb887d5f3732f88c8cec3 ↵Sven Gothel2012-06-161-1/+1
| | | | (IOUtil.createTempFile(..) change)
* Java Source Files: dos -> unix formatSven Gothel2012-05-154-434/+434
|
* graph/font: Add "public float getAdvanceWidth(int i, float pixelSize);"Sven Gothel2012-05-152-1/+6
| | | | | Font::getAdvancedWidth(..) allows applications to query a glyphs width with a given pixel size, as it is being used for rendering.
* Graph/Glyph: Clarify public Font.Glyph and private FontInt.GlyphIntSven Gothel2012-05-153-11/+7
|
* API Change ShaderCode/ShaderUtil: Enable optional mutable shader source / ↵Sven Gothel2012-04-162-8/+8
| | | | | | | | | | | | | | | | | | | | | | generalize shader source storage type to CharSequence[] Benefits: - Allows code injection and general shader source editing (before compilation) - Uses mutable StringBuilder only if editing is intended, hence reduces memory footprint and String conversion at compilation in such case. - ShaderCode.create(..) factory methods add nw attribute 'mutableStringBuilder' if true method returns a mutable StringBuilder instance which can be edited later on at the costs of a String conversion when passing to 'glShaderSource(int, int, String[], IntBuffer)'. If <code>false</code> method returns an immutable <code>String</code> instance, which can be passed to {@link GL2ES2#glShaderSource(int, int, String[], IntBuffer)} at no additional costs. - New 'edit' methods in ShaderCode: ' - int insertShaderSource(int shaderIdx, String tag, int fromIndex, CharSequence data); - int insertShaderSource(int shaderIdx, int position, CharSequence data);
* StringBuffer -> StringBuilder (Local objects, no concurrency) ; Impacts: ↵Sven Gothel2012-04-1637-53/+53
| | | | Capabilities/GLContext API 'toString(StringBuilder)'
* GLArrayData: Fix 'growBuffer()' / clarify 'initialSize' -> 'initialElementCount'Sven Gothel2012-04-112-11/+11
| | | | | - growBuffer() was using '(osize+additional) * components' -> 'osize + (additional * components )' - added jogl.debug.GLArrayData - notifying growBuffer()
* Adapt to GlueGen IO resource changes URL -> URLConnection for effeciency; ↵Sven Gothel2012-03-173-10/+10
| | | | | | | | | | API doc enhancements; Minor edits - API doc added/enhanced: - ShaderCode - ShaderUtil - NewtBaseActivity: Clarify method / var names
* Adapt to gluegen Properties/Security commits ↵Sven Gothel2012-03-131-1/+1
| | | | f4ac27e177f6deb444280d3b375e7d343e38bd080 and eedb4b530fb83fc59a26962bcf7847a1404092a0
* Min. Graph Parameter type change: texSize/width/.. for multipass-renderer: ↵Sven Gothel2012-02-255-18/+28
| | | | | | | | | | 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.
* Fix VBORegion2PES2: Don't exceed MAQX_TEXTURE_SIZESven Gothel2012-02-221-0/+8
|
* FontSet (graph): get*(..) throws IOException - Proper passing and handling ↵Sven Gothel2012-02-224-17/+22
| | | | of IOException
* Fix commit fb7165e690546359dee92dd60b04be69f141c87e; Clarify ↵Sven Gothel2012-02-202-2/+2
| | | | ShaderState.attachShaderProgram(..)
* javac - setup encoding to UTF-8Sven Gothel2012-01-231-3/+3
|
* minor editSven Gothel2011-11-091-1/+1
|
* Graph Shader Simplification, 'a'/'b' redefined; GraphUI 2-pass demo;Sven Gothel2011-10-0411-115/+185
| | | | | | | | | | | | | | | | | | | | | | | 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)
* tegra: refine disabled discard, ie keep logic/math intact. Rami ?Sven Gothel2011-10-021-6/+6
|
* Graph: Reflect shader name change in impl. TODO: Use/switch to 2nd pass shaderSven Gothel2011-10-021-1/+5
|
* Fixed shader entry files a/bRami Santina2011-10-026-2/+21
|
* Fix intendationRami Santina2011-10-021-34/+34
|
* tegra2: split fragment shaders into two (a - 1st pass, b - 2nd pass) ; ↵Rami Santina2011-10-0211-67/+72
| | | | | | | | | | | | disabled discard - 1st pass (a) and 2nd pass (b), split at branch. - all include are on one level. - disabled discard, as it seems to be problematic Todo: - verify discard / pass-split on tegra2 - refect second pass usage (b) in implementation
* Added allin one shader stripped for graph.Rami Santina2011-10-022-0/+70
| | | | | tegra2 hunting, single pass, no discard, lowp, and removed uneeded variables
* Graph GLSL: Use global precicision settings enhancing readabilitySven Gothel2011-09-307-60/+54
|
* TypecastFontConstructor: Use IOUtil's createTempFile() to comfort AndroidSven Gothel2011-09-281-4/+2
|
* Fix ES2 shadersSven Gothel2011-09-284-4/+6
| | | | | | | | | | | Add missing floating point precision qualifiers. '#extension OES_standard_derivatives : require' somehow doesn't pass the GLSL compiler, however '#extension GL_OES_standard_derivatives : enable' does. Currently works on ARM's Mali-400 MP, NV Tegra still don't show a picture. TODO: More in depth evaluation.
* Graph Fonts: Decorate w/ PrivilegedAction if requiredSven Gothel2011-09-152-13/+33
|
* GLSL DataArray/Handler: Remove ShaderState state and pass it through: ↵Sven Gothel2011-08-303-17/+12
| | | | | | | | | 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
* Misc Rename/Reloc; GLArrayData*/PMVMatrix enhancments; Test fixes/adds ↵Sven Gothel2011-08-222-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (GearsES1/ES2) rename/reloc: - javax.media.nativewindow.util: DimensionReadOnly -> DimensionImmutable PointReadOnly -> PointImmutable RectangleReadOnly -> RectangleImmutable unified 'immutable' name as used within jogamp already - remove array handler from public API com.jogamp.opengl.util.GL*ArrayHandler -> jogamp.opengl.util.GL*ArrayHandler - GLArrayData: Clarify method names getComponentNumber() -> getComponentCount() getComponentSize() -> getComponentSizeInBytes() getElementNumber() -> getElementCount() getByteSize() -> getSizeInBytes() - FixedFuncPipeline: Moved def. array names to GLPointerFuncUtil enhancement: - GLArrayDataServer: Add support for interleaved arrays/VBO - GLArrayData*.createFixed(..) remove 'name' argument (non sense for fixed function) - PMVMatrix: - one nio buffer - removed 'Pmv' multiplied matrix - removed 2x2 cut down 'Mvi' normal matrix (use 4x4 Mvi) - tests: - RedSquare -> RedSquareES1/RedSquareES2 - Gears ES1 fixed + ES2 added. Both work properly and share common Gears VBO construction - Added TestMapBuffer01NEWT, testing glMapBuffer
* Enclose file IO access in priviledged blockSven Gothel2011-08-111-11/+24
|
* graph es2 glsl: #extension OES_standard_derivatives : requireSven Gothel2011-07-312-0/+6
|
* TAB -> SPACESven Gothel2011-07-311-2/+2
|
* Graph Shader: def. GRAPHP to easily change precision, set to mediump; Add ↵Sven Gothel2011-07-316-66/+64
| | | | precision for all vars.
* added (c) headerSven Gothel2011-07-281-0/+27
|
* Handle curved triangles overlaps.Rami Santina2011-06-201-221/+220
| | | | | | | | | | 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)
* Merge remote-tracking branch 'remotes/rsantina/master'Sven Gothel2011-06-115-36/+38
|\
| * Graph: Remove unused importsRami Santina2011-06-052-2/+0
| |
| * Graph: updated inclass documentationsRami Santina2011-06-054-34/+38
| |
* | Merge remote-tracking branch 'rsantina/master'Sven Gothel2011-06-087-92/+305
|\|
| * Add Factory for triangulation with base Interface; misc cleanupRami Santina2011-06-053-4/+207
| | | | | | | | | | | | | | | | | | 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
| * Font and TypecastRender generate array of OutlineShapes instead of Path2DRami Santina2011-06-025-88/+98
| | | | | | | | GlyphShape and GlyphString use only OutlineShapes
* | Locator moved to GlueGen's IOUtil (gluegen ↵Sven Gothel2011-06-081-2/+3
| | | | | | | | a87c56c95099de5b6cbc9bd8bf6f1924a3dd6387)
* | Using GlueGen IOUtil (dropped StreamUtil, FileUtil); Public GLReadBufferUtil ↵Sven Gothel2011-06-071-1/+1
|/ | | | | | | | (screenshot etc) and GLPixelStorageModes - Using GlueGen IOUtil, dropping StreamUtil and FileUtil - Public (util) GLReadBufferUtil for screenshots and slow r2t (AWT less), as well as GLPixelStorageModes
* Remove implicit for loops reduces temp objectsRami Santina2011-05-214-11/+13
|
* Fix: vertex in loop test; using crossing methodRami Santina2011-05-212-68/+15
| | | | | Changed algo for in/out test of vertex wrt arbitrary polygon to crossing test since angle based is shown prune to precision errors
* FIX graph FBObject usage - 526ea7a3fb579f88a0c0a1e597387aae29d5aa06Sven Gothel2011-05-171-15/+10
|
* Graph: getWinding(ArrayList<Vertex> vertices) test; minor renamingSven Gothel2011-05-102-3/+4
|
* Graph/Loop: More readable/verbose invert case; using Winding enum; ttf ↵Sven Gothel2011-05-102-23/+28
| | | | reader: Adding debug dump of font direction hint
* Fix: glyph outline orientation with the removal of inversionRami Santina2011-05-102-3/+4
|
* Loop: Fix invert; GlyphString/createRegion: Remove unnecessary on-the-fly ↵Sven Gothel2011-05-092-26/+25
| | | | object creation
* TypecastRenderer: Avoid -y direction and later y-flipping / FIXME: math must ↵Sven Gothel2011-05-081-17/+17
| | | | be updated .. Rami ?