| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
'GL_OES_EGL_image_external' not supported
+ // Bug on Nexus 10, ES3 - Android 4.3, where
+ // GL_OES_EGL_image_external extension directive leads to a failure _with_ '#version 300 es' !
+ // P0003: Extension 'GL_OES_EGL_image_external' not supported
+ preludeGLSLVersion = false;
|
|
|
|
| |
passed, this allows native GLCaps/config query to follow fast-path
|
|
|
|
|
|
|
|
| |
(!skipCapsChooser mode)
Regression of commit cf1163fc88976e7087d3a17524a49139e35a4708:
Commit dropped seeking recommendedIndex of chosenPFDID within cleaned-up availableCaps
when in !skipCapsChooser mode.
|
| |
|
| |
|
|
|
|
| |
initializeBackendImpl(), already tested before function entry!
|
|
|
|
| |
in !blocking mode, i.e. notifyAll() if waitCondition holds and test again
|
|
|
|
| |
reusing of app)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Validate isGLES*() usage and definition ; Add and use ShaderCode.createExtensionDirective(..)
- Fix GLES3 Profile Mapping, i.e. GL2ES2 queries and mappings
- GLProfile: Add GL2ES2 -> ES3 mapping
- EGLContext: Reuqest major '3' for ES3
- EGLGLCapabilities/EGLGraphicsConfiguration: Consider EGLExt.EGL_OPENGL_ES3_BIT_KHR
- Validate isGLES*() usage and definition
- Fix BuildComposablePipeline's isGLES() code
- For GLSL related queries use isGLES() instead of isGLES2(),
which would exclude ES3
- Add and use ShaderCode.createExtensionDirective(..)
- Supporting creating GLSL extension directives while reusing strings from GLExtensions
- Minor cleanup of GLContextImpl.setGLFuncAvail(..)
|
| |
|
| |
|
| |
|
|
|
|
| |
Windows/ATI driver ..
|
|
|
|
|
|
| |
user to trigger backend initialization eagerly and offthread (optional, !WINDOWS)
TestPerf001GLJPanelInit02AWT compares all variations: no-gl, glcanvas, gljpanel and gljpanel-initMT (offthread)
|
|
|
|
| |
device does _not_ require locking on global shared device.
|
|
|
|
| |
for analysis.
|
|
|
|
| |
applications to not block until window becomes visible.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'choose' only and 'full' offscreen-drawable w/ context
test01ChooseOnly exposes X11/GLX perf. enhancement of 613e33ee8ffc1f2b9c5db1e1b5bb5253a159ed6d:
PRE CHANGE:
++++ UITestCase.setUp: com.jogamp.opengl.test.junit.jogl.perf.TestPerf001RawInit00NEWT - test01ChooseOnly
INIT START #0
Run: 0, count 50/50 raw:
choose 503/t 10.06/1
INIT END #0
INIT START #1
Run: 1, count 50/50 raw:
choose 384/t 7.68/1
INIT END #1
INIT START #2
Run: 2, count 50/50 raw:
choose 344/t 6.88/1
INIT END #2
POST CHANGE:
++++ UITestCase.setUp: com.jogamp.opengl.test.junit.jogl.perf.TestPerf001RawInit00NEWT - test01ChooseOnly
INIT START #0
Run: 0, count 50/50 raw:
choose 49/t 0.98/1
INIT END #0
INIT START #1
Run: 1, count 50/50 raw:
choose 43/t 0.86/1
INIT END #1
INIT START #2
Run: 2, count 50/50 raw:
choose 38/t 0.76/1
INIT END #2
|
|
|
|
|
|
|
|
|
| |
Even though the test case itself cannot show the proper initialization time,
it can be used w/ an attached profiler i.e.
Test w/ 50 X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationFBConfig() invocations:
- pre change: 1.708 ms
- post change: 650 ms (613e33ee8ffc1f2b9c5db1e1b5bb5253a159ed6d)
|
| |
|
|
|
|
|
|
|
|
| |
unified gl- and glx-extension strings.
- HashMap is more efficient than HashSet
- No need to use sub HashSet's .. we can use global HashMap.
'Loosing' duplicate GLX entries due to GL duplicates is acceptable.
|
|
|
|
|
|
|
| |
613e33ee8ffc1f2b9c5db1e1b5bb5253a159ed6d to EGL and WGL.
Note: WGL config query is already performed as a bulk operation.
Note: OSX does not perform such queries.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
X11GLXGraphicsConfiguration.GLXFBConfig2GLCapabilities(..)
X11GLXGraphicsConfiguration.GLXFBConfig2GLCapabilities(..) ran over all FB configs and for each it grabbed
native config values separately. Fetching them in bulk mode saves around 7% of this function's cost.
Also reuse XRenderPictFormat instance for 'XRenderDirectFormat XRenderFindVisualFormat(..)' call,
saving a few NIO creation cycles w/ StructAccessor.
Biggest savior is X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationFBConfig()'s
fast path w/o chooser and usable 1st FBConfig. Here we only issue 'GLXFBConfig2GLCapabilities(..)'
on the first valid entry.
Test w/ 50 X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationFBConfig() invocations:
- pre change: 1.708 ms
- post change: 650 ms
Time is no spent almost solely on native glXChooseFBConfig (546ms).
|
|
|
|
| |
and let it fail there instead of within impl. class, only pass the handle - simplifies and removes redundancy.
|
|
|
|
|
|
|
| |
'Hisilicon Immersion.16')
Note: Even though Mesa Intel driver crashes w/ heavy multithreading (Bug 873),
it works well w/ our multithreaded GLMediaPlayer.
|
|
|
|
|
|
|
|
|
|
|
|
| |
multiple media textures (Android) or shared GL context are not usable.
- GLMediaPlayer:
- TEXTURE_COUNT_MIN is the new minimum: '1' - i.e. no multithreading, single threaded player
- TEXTURE_COUNT_DEFAULT is '4' - multithreaded
- GLMediaPlayerImpl:
- Add Single threaded mode, but perform initStreamImpl(..) off-thread.
-
|
|
|
|
| |
expecting exception w/ core profile!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(spec doesn't mention it, and it does not show results w/ CPU sourced rendering) ; Clean up GLBuffer*Tracker
+ * Note that VAO initialization does unbind the VBO .. since otherwise they are still bound
+ * and the CPU_SRC test will fail!<br/>
+ * The OpenGL spec does not mention that unbinding a VAO will also unbind the bound VBOs
+ * during their setup.<br/>
+ * Local tests here on NV and AMD proprietary driver resulted in <i>no ourput image</i>
+ * when not unbinding said VBOs before the CPU_SRC tests.<br/>
+ * Hence Bug 692 Comment 5 is invalid, i.e. <https://jogamp.org/bugzilla/show_bug.cgi?id=692#c5>,
+ * and we should throw an exception to give users a hint!
Leaving uncommented code in GLBufferStateTracker ..
+++
- Clean up GLBuffer*Tracker
- Use final
- Use static final keyNotFound value.
|
|
|
|
|
|
|
|
|
|
| |
manually in close0()
Release NewtMacWindow manually in close0()
- Mark [NewtMacWindow setReleasedWhenClosed: NO] in init0(..)
- Release NewtMacWindow manually in close0(..)
Check pointer args in close0(..)
|
|
|
|
| |
handles before usage in NewtMacWindow (Not the culprit .. but more safe)
|
|
|
|
|
|
|
| |
use EGLDummyUpstreamSurfaceHook .. a pbuffer offscreen
fixOffscreenBitOnly(..) may yield FBO queries / chosing .. usually doesn't matter (on devices here),
but not accurate.
|
|
|
|
| |
GLCapabilitiesChooser instead of GLProfile, allowing using same or similar caps - important for sharing ctx
|
|
|
|
| |
'out of memory' and saves most of the time; Also run test exclusively.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
reduce footprint for the masses.
Remove the ubuntu fonts from atomic/jogl-util-graph.jar and hence all derivated 'all' JAR files.
The Android jar files still contain the fonts as assets!
atomic/jogl-util-graph-fonts-p0.jar contains the fonts and is either referenced by:
- UbuntuFontLoader: Using class based Jar URI derivation using TempJarCache to [down]load
and extract the jar file (similar to native lib-loading).
- Explicitly via traditional classpath, see jnlp-files/jogl-applet-runner-newt-GraphTextDemo01b-napplet.html
The pack200 jogl-all.jar file is now below 1MB
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(again) on 'addNotify(..)' - GLCanvas in JtabbedPane disappear
Regression of commit e33e6374e0be0454f7e9732b5f897f84dbc3c4dc (Fix for Bug 729 and Bug 849) !
+++
JAWTWindow's HierarchyListener doesn't set component visible (again) on 'addNotify(..)'
It only renders the component invisible after removeNotify() which is performed implicit anyways ..
Case java.awt.event.HierarchyEvent.DISPLAYABILITY_CHANGED
shall perform similar as our java.awt.event.HierarchyEvent.SHOWING_CHANGED impl.
+++
Tested on Gnu/Linux X11 and OSX incl. re-test Bug 729 and Bug 849 unit tests.
|
|
|
|
| |
better unit test lookup
|
|
|
|
| |
junit.run.noui
|
|\ |
|
| |
| |
| |
| | |
point values. Derived from http://mvn.io7m.com/ieee754b16, of which I am the original author.
|
|/
|
|
| |
add println; GearsES: Add init/shared state to 'toString()'
|
|
|
|
| |
GearsObject used getGL2ES2(), which is not allowed.
|
|
|
|
| |
DEBUG output.
|
|
|
|
|
|
|
|
|
|
|
|
| |
strictMatch minor) and reuse isES; EGLContext: Use strictMatch for setGLFunctionAvailability() and handle failure; EGLDrawableFactory: Either detect ES3 or ES2.
- Cleanup branch using VersionNumber (fix 'Int' check strictMatch minor) and reuse isES
- EGLContext: Use strictMatch for setGLFunctionAvailability() and handle failure
On ES, we require strictMatch, cleanup if failing.
- EGLDrawableFactory: Either detect ES3 or ES2.
Both only available with proper EGL context creation for ES profiles (TODO)
|
|
|
|
| |
operation, throw InternalError if failing
|
|\
| |
| | |
Fix #875 - ES version should be strictly validated
|