| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
havoc: gcu_ -> mgl_ uniform names
|
|
|
|
| |
after window is destroyed to exit the JVM
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 ..
|
|
|
|
|
|
|
| |
makes sense)
- WindowImpl/GLWindow: Cleanup destroy code ..
- Tests: sync / remove FPS stderr print
|
| |
|
| |
|
| |
|
|
|
|
| |
; Disable FPS draw at start
|
|
|
|
| |
ea819ff768d507c37a981c1ab0bdc0cad32c6a87)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If GL_ARB_debug_output is not available, but GL_AMD_debug_output exist, fallback to the latter,
offering generic aliased methods translating the delta (AMD category <-> ARB source/type).
Generic aliased methods reside in GLContext*
Enable/Disable via GLContext and GLAutoDrawable.
To enable the GLDebugOutput feature GLContext.enableGLDebugMessage(true)
or GLContext.setContextCreationFlags(GLContext.CTX_OPTION_DEBUG)
shall be called _before_ context creation via GLContext.makeCurrent()!
In case GLAutoDrawable is being used,
GLAutoDrawable.setContextCreationFlags(GLContext.CTX_OPTION_DEBUG)
shall be issued before context creation via GLContext.makeCurrent()!.
After context creation, the GLDebugOutput feature may be enabled or disabled
at any time using this method.
Verify both unit tests for usability.
|
|
|
|
|
|
|
|
|
|
|
| |
API change)
- Don't fetch System.currentTimeMillis() by default and for every frame (performance)
- Default behavior is FPSCounter switched off
- Enable by frame interval, ie measure each 60 frames.
- FPSCounterImpl is default impl. used by impl. FPSCounter class (reduce code/redundancy)
- Might be promoted to GLAutoDrawable ?!
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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 :)
|
|
|
|
|
|
| |
Capable of glBinAttribLocation(..)
Proper state check (has program, linked program, ..) for attrib/uniform methods.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(remove GLContext.getCurrentGL() usage.
Using function signatures explicitly require the GL [current] instance clarifies
that the context must be current.
Removing GLContext.getCurrentGL() reduces TLS access of current thread
and hence possible performance hits.
The Texture class has been chosen for this conversion [not TextureIO yet],
since the enable/bind methods maybe used within a rendering loop.
User already 'complained' about lack of current GLContext clarity as well.
|
| |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
target, comments, names)
VBO target: Allowing ELEMENT_VERTEX_ARRAY w/o corresponding GLSL/Fixed attribute
Names: Clarified method named.
Comments: Added and fixed comments
|
|/
|
|
|
|
|
|
|
| |
RIButton - resolution independent vector based button
UINewtDemo01 --> shows a testcase of a button rendered on scene.
controls: 1/2: zoom in/out
4/5: increase/decrease shape/text spacing
6/7: increase/decrease corner size
0/9: rotate.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
(AWT); Remove static init as well
|
| |
|
| |
|
|
|
|
| |
This allows SWT on OSX to work properly.
|
|
|
|
| |
somehow solves the problem on Windows having no height
|
|
|
|
| |
for window locking calls, ie window changes. The GLRunnable list is executed while window is locked.
|
|
|
|
|
|
|
|
|
| |
Gears (add cursor rotation)
TestGearsNEWT (add decoraction toggle 'd')
WindowImplAccess NEWT Closing tests .. programmatical close on EDT,
which simulates 1:1 native closing operation.
|
| |
|
| |
|
|
|
|
| |
GLCanvas.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Using @Override on implementations of interface methods wasn't
introduced until Java 1.6. After changing the compliance level to
1.5 in Eclipse, it reports 23 errors.
This fix comments out the annotations rather than deleting them
altogether thinking it may be easier if JOGL ever targets 1.6
in the future.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
GLCanvas changes
Cleanup NEWT MainThread, using new AWTEDTUtil impl.
- Allow simple singleton AWTEDTUtil to be used for AWTDisplay and more ..
Sync AWTCanvas with GLCanvas changes
- Latest GLCanvas changes around addNotify() had to be synced
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
jogamp.<module> (2/2) - edit files
- com.jogamp.opengl.impl -> jogamp.opengl
- com.jogamp.opengl.util.glsl.fixedfunc.impl -> jogamp.opengl.util.glsl.fixedfunc
- com.jogamp.nativewindow.impl -> jogamp.nativewindow
- com.jogamp.newt.impl -> jogamp.newt
This sorts implementation details from the top level, ie skipping the public 'com',
allowing a better seperation of public classes and implementation details
and also reduces strings.
This approach of public/private seperation is also used in the OpenJDK.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
jogamp.<module> (1/2) - rename task
- com.jogamp.opengl.impl -> jogamp.opengl
- com.jogamp.opengl.util.glsl.fixedfunc.impl -> jogamp.opengl.util.glsl.fixedfunc
- com.jogamp.nativewindow.impl -> jogamp.nativewindow
- com.jogamp.newt.impl -> jogamp.newt
This sorts implementation details from the top level, ie skipping the public 'com',
allowing a better seperation of public classes and implementation details
and also reduces strings.
This approach of public/private seperation is also used in the OpenJDK.
|
| |
|