| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
VBO/attribute binding wasn't updated (VBO data written, shader change/switch attribute on same location) ; Optimized interleaved GLSL VBO binding, hence split up GLArrayHandler syncData/enableState
|
|
|
|
| |
NativeWindow/Newt Version since we use *all* targets
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(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
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
shall be updated before swap.
This allows color selection GLRunnables, executed after the GLEventListener.
|
| |
| |
| |
| |
| |
| | |
- EGLDrawableFactory: createProxySurfaceImpl: add proper config choosing
- EGLCapabilities/EGLGraphicsConfiguration: Add nativeVisualID
- All: Avoid critical array access -> use NIO
|
| | |
|
| |
| |
| |
| | |
(Android)
|
| | |
|
| |
| |
| |
| | |
proper EGL type.
|
| | |
|
| | |
|
| |
| |
| |
| | |
initialize shared
|
| | |
|
| | |
|
| |
| |
| |
| | |
FIXME: find proper solution, instead of using hardcoded and non-std lib names
|
| |
| |
| |
| |
| |
| |
| | |
fix debug log in case no device has been initialized
use gluegen's fix of DynamicLibraryBundle.isGlueLibComplete()
- see gluegen commit 6281499e53555fd8ab26345ffce4c4d09bf57a09
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
separation ; android cleanup
remaining all-in-one jnlp's / jars:
jogl-all-awt.jnlp -> jogl.all.jar
jogl-all-noawt.jnlp -> jogl.all-noawt.jar
jogl-all-mobile.jnlp -> jogl.all-mobile.jar
native for all above: jogl-all-natives-linux-amd64.jar
jogl.all-android.apk jogl.all-android.jar
more may follow for each supported platfrom
++++
- newt: proper 'driver' separation
- all drivers reside now in jogamp.newt.driver.*
- remove intptr.cfg / use gluegen's
|
|
|
|
|
|
|
|
| |
Refines spec GLArrayData and it's implementations.
see commit 76f7552c4a219b116e86949f271e613ba0f6f160
see commit 4d33a2df1e991ab75817dcb44061d88d3c499cdb
see commit 2dbd16fc3edf29b39ba37a11b9fbf1b2aad75c45
|
|
|
|
|
|
|
|
|
|
| |
desktop profiles
Allow EGL besides desktop
- Initialize EGL for default EGL device, even if desktop is available
Desktop factories restricted to desktop profiles
- Don't use native ES1/ES2 here ..
|
|
|
|
| |
- Add platform type to key
|
|
|
|
|
| |
Ubuntu:
sudo apt-get install mesa-utils-extra libegl1-mesa libegl1-mesa-drivers libgles1-mesa libgles2-mesa
|
|
|
|
|
|
|
|
|
|
| |
of XineramaQueryScreens()
- Reenable creating own XDisplay for AWT components, which reduces/removes hang
in subsequent XQueryExtension call (fetchScreens .. XineramaEnabled())
- Impl. use XineramaIsActive() instead of XineramaQueryScreens()
Reducing memory allocation, XFree call (which was missing anyways)
|
|
|
|
| |
-1/0, avoid driver bug.
|
|
|
|
|
|
|
| |
Refines spec GLArrayData and it's implementations.
see commit 4d33a2df1e991ab75817dcb44061d88d3c499cdb
see commit 2dbd16fc3edf29b39ba37a11b9fbf1b2aad75c45
|
| |
|
|
|
|
| |
Turns out some GL impl. use VBO names like 0xa2d67443, which is (int) < 0.
|
|
|
|
|
|
|
|
|
|
| |
values. Impl -> final.
Map's KeyNotFound value -1 -> 0xffffffff
Turns out some GL impl. use VBO names like 0xa2d67443, which is (int) < 0.
This is now handled in GLBufferStateTracker as well as for the others.
Make methods final to restrict 'em.
|
| |
|
| |
|
| |
|
|
|
|
| |
precision for all vars.
|
|
|
|
|
|
|
| |
Fix wrapFixedFuncEmul():
- only wrap if ES2 and (!ES1 || force)
- return same profile if ES1
- otherwise throw exception
|
|
|
|
| |
attributes final
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
libGL.so; Cosmetics
EGL: Set CTX_PROFILE_ES2_COMPAT if ES2;
Allow any native device for EGL
- EGLDrawableFactory::getIsDeviceCompatible() -> true always,
impl. shall handle all native windowing toolkit layers, if available.
Don't use libGL.so
- desktop GL library is exclusive for desktop bindings
|
|
|
|
|
|
| |
- GL_PROFILE_LIST_MIN_DESKTOP -> GL_PROFILE_LIST_MIN
- Fix exception in glAvailabilityToString(), if no profile is available
- getMinDesktop() -> getMinimum()
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
EGL.eglChooseConfig() ; Cosmetics
Collect all avail EGL caps w/o GLProfile preset
- pass GLProfile null for collecting all available EGL GLCapabilities,
allowing EGLGLCapabilities to set the GLProfile regarding EGLConfig's renderableType.
Tolerate failing EGL.eglChooseConfig()
- use chooser algo, trying to pick one EGLConfig manually
Cosmetic toHexString change
|
|
|
|
|
|
|
|
| |
GLProfile compatibility
EGLConfig's EGL_RENDERABLE_TYPE determines ES1, ES2 or VG usage (bitfield).
We have to store and compare it's value w/ the desired GLProfile to choose a valid one,
or just store it.
|
|
|
|
| |
is native ES
|
| |
|
|
|
|
|
| |
Indicates whether this GL object is compatible with OpenGL ES2,
i.e. has the extension <code>GL_ARB_ES2_compatibility</code>
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- Catch exceptions in SR thread avoiding deadlock in blocking caller thread
- Catch NPE on SR queries to return null if appropriate
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
profiles )
- GLProfile.initSingleton(boolean) (implicit or explicit) won't
throw any exception anymore. Followup 'GLProfile GLProfile.get(..)'
calls will throw a GLException, if n/a.
Availability maybe queried via GLProfile.isAvailable(..).
- GLCapabilties, GLCanvas, GLJPanel: Clarify case where GLException maybe thrown,
i.e. no default GLProfile available on default device.
- Remove redundant GLProfile.is<ProfileName>Available(..)
|
|
|
|
|
|
|
|
|
|
| |
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)
|