| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
for a long time!
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
calling 'PropertyAccess.isPropertyDefined(propName, default)' through Debug class.
Calling 'Debug.isPropertyDefined(propName, default)' may be 'optimized' to
'PropertyAccess.isPropertyDefined(propName, default)', which would skip the modules Debug's class initialization.
Iff that happens, an AccessControlException may happen, due to requesting an insecure property,
since modules own Debug class has not been added it's trusted prefixes from within it's init block yet.
This seems to be a bug of the JVM .. to me, however .. the above description is the only
able to explain the issue at hand.
+++
Fix calls Debug class own static methods, either Debug.initSingleton() or Debug.debug(),
before calling 'isPropertyDefined(propName, default)'.
+++
Also mark Debug class static methods final!
+++
|
| |
|
|
|
|
| |
offscreen, i.e. no on- offscreen switch possible.
|
| |
|
|
|
|
| |
deprecated in 130 and removed in 150.
|
|
|
|
| |
isExtensionAvailable() - impl. uses a mapping.
|
|
|
|
|
|
| |
add GLProfile argument, similar to canCreateFBO(..)
In case a compatible non-core profile is requests, canCreateGLPbuffer(..) returns false on OSX.
|
|
|
|
| |
class does _nor_ premultiply RGBA image data by default!
|
|
|
|
| |
commit 1a20ef3aa1dc9acedd7da0475ee19d4c40b18498)
|
|
|
|
|
|
|
|
|
| |
case proper ES3_compat is given.
isGLES3Compatible() and isGL4ES3() of GLBase _and_ GLContext
includes [ GL >= 4.3, GL >= 3.1 w/ GL_ARB_ES3_compatibility and GLES3 ].
Tested GL 'aliasing' w/ TestGLProfile01NEWT, i.e. isGL*() and getGL*().
|
|
|
|
|
|
| |
ALPHA (regression of e92e561df9673ce77783d6fa3815a942a39a53c0)
GLES2 does not and GL2 may not support RED!
|
| |
|
|
|
|
| |
version number, use VBO only, ...)
|
| |
|
|
|
|
| |
won't work w/ core >= GL3 profiles
|
| |
|
|
|
|
| |
core profile now - no more OSX exception!
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
BuildComposablePipeline: Unify GL identify methods
- Only use base pipelines for Trace/Debug, mock others (ES2, GL2, ..)
The Trace/Debug generated pipelines consume quite some space
and only the actual GL*Impl pipeline is actually required.
To make this work, we have to identify the GL type via it's downstream instance
to implement isGL*() and getGL*() methods, see below!
Adding dummy Trace/Debug type wrapper for GL2, GL3, GL3bc, GL4 and GLES2.
BuildComposablePipeline: Unify GL identify methods
As described above, Trace/Debug shall utilize downstream identification for isGL*() and getGL*() methods.
Custom types, like FixedFuncImpl may choose to be identified by their class inheritance,
by passing command-line argument 'gl_identity_by_assignable_class'.
|
| |
|
| |
|
| |
|
|
|
|
| |
3a0d7703da32e9a5ddf08a334f18588a78038d88
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
getDownstreamGL()/getRootGL(); GLContext.isGL* added proper API doc., isGL3core()/hasNoDefaultVAO() and getDefaultVAO().
- Fix BuildComposablePipeline's isGL*/getGL* (regression of commit 3a0d7703da32e9a5ddf08a334f18588a78038d880)
- GLBase: getDownstreamGL()/getRootGL()
Allows user traversing through pipelined GL instances.
Also added getRootGL() to GLContext.
- GLContext.isGL* added proper API doc.: We test the actual context, not the profile.
- GLContext isGL3core()/hasNoDefaultVAO() and getDefaultVAO()
- Move isGL3code() def. back to pre 3a0d7703da32e9a5ddf08a334f18588a78038d880, i.e. Includes [ GL4, GL3 ] w/o GLES3.
- Added hasNoDefaultVAO() and getDefaultVAO() .. incl. [ GL4, GL3, GLES3 ]
|
|
|
|
| |
CPP redefinitions
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ES3 / GL4.3:
- Update all EGL, GLX, WGL and GL (desktop and mobile) khronos headers to latest version.
- GL3/gl3* -> GL/glcorearb*
- Explicitly preserve ES2_compatibility and ES3_compatibility in header,
most extension grouping was removed in new headers.
- Always load all GLHeader to ensure proper extension association across all profiles.
- Unified method signatures
- Added GL_EXT_map_buffer_range to core
- Using common 'glMapBufferImpl(..)' for all glMapBuffer(..) and glMapBufferRange(..) impl.
- Init necessary fields of GL instances via 'finalizeInit()' called by reflection, if exist.
This allows removing initialization checks, i.e. for all buffer validations.
- BuildStaticGLInfo: Can handle new GL header structure, i.e. one CPP extenstion block incl. define + funcs.
- GLJavaMethodBindingEmitter: Simply print the
- No GL duplication due to new intermediate interfaces, see below
- OO lineare inheritance (Added GL2ES3, GL3ES3 and GL4ES3 intemediates):
GLBase - GL - GL2ES2 - GLES2
GLBase - GL - GL2ES2 - GL2GL3 - [ GL2, GL3 ]
GLBase - GL - GL2ES2 - GL2ES3 - GL3ES3 - [ GL3 ]
GLBase - GL - GL2ES2 - GL2ES3 - GL3ES3 - GL4ES3 - [ GLES3, GL4, .. ]
- Expose 'usable' intermediate interfaces GL3ES3 and GL4ES3 in GLBase/GLProfile/GLContext
via is*() and get*().
- GLContext*:
- isGL3core() is true if [ GL4, GL3, GLES3 ] (added GLES3)
- Added ctxProfile argument to allow handling ES versions:
- getMaxMajor(..), getMaxMinor(..), isValidGLVersion(..) and decrementGLVersion(..)
- mapGLVersions(..) prepared for ES ARB/KHR validation
- EGLContext checks ES3 (via old ctx's GL_VERSION)
- ExtensionAvailabilityCache adds GL_ES_Version_X_Y for ES.
- Prelim tests w/ Mesa 9.1.3
GL Version 3.0 (ES profile, ES2 compat, ES3 compat, FBO, hardware) - OpenGL ES 3.0 Mesa 9.1.3 [GL 3.0.0, vendor 9.1.3 (Mesa 9.1.3)]
- TODO:
- Use KHR_create_context in EGLContext.createContextARBImpl(..)
- More tests (Mobile, ..)
+++
Misc:
- GLContext*:
- Complete glAllocateMemoryNV w/ glFreeMemoryNV.
|
| |
|
|
|
|
| |
pulling GLAD from it.
|
| |
|
|
|
|
| |
in manual mode.
|
|
|
|
|
|
| |
preferred mode and normal rotation using RandR 1.3
.. using commandline processing w/ 'xrandr'
|
|
|
|
|
|
| |
https://code.google.com/p/pngj Part 2/2 - Started w/ 51427b92a2d9cd3fc619854e26536c9c6adad947
Missed rejected patches ..
|
|
|
|
| |
MonitorMode test cases reducing impact.
|
|
|
|
|
|
|
|
| |
UITestCase's AfterClass if available (X11).
In case a MonitorMode test case fails, force XRandR reset '-s 0 -o normal' at end of test class if X11.
Unit Test: TestScreenMode00cNEWT
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WeakReference, i.e. higher retention of Display instances.
- WeakReference Change 99479bf3197cde8e89c5b499d135417863d521c7
- Refines commits:
feb352145af1643a57eaae99c0342e6f5e0f2a2e
dec4b02fe4b93028c85de6a56b6af79601042d6e
433e3914324b90c910b018bb7d9d80e814c67123
Reviews EDTUtil API and usage:
- less confusing / more determined EDTUtil API
- EDTUtil's thread shall only be reset and started when required (-> lazy)
- EDTUtil's instance in Display shall be handled thread safe w/o extra blocking
- EDTUtil's implementations (Default, SWT and AWT) shall be aligned / similar as much as possible
Further note: SWT's EDTUtil (NewtCanvasSWT) shall not use a reused Display instance due to it's
custom SWTEDTUtil. We may need to disable the ref. cache if custom EDTUtil (setEDTUtil)
is intended (used).
|
|
|
|
|
|
|
|
|
|
|
|
| |
dec4b02fe4b93028c85de6a56b6af79601042d6e, ensuring EDT is running for reused Display instances.
Refine EDTUtil semantics of:
- reset()
- waitUntilStopped()
AWTEDTUtil/SWTEDTUtil: Properly signal !running when shutdown
SWTEDTUtil: Take SWT isDisposed() into account.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
usage to NIO only.
Code snippet for PointerBuffer usage:
Code snippet .. how to use PointerBuffer in this case:
IntBuffer indices = Buffers.newDirectIntBuffer(count);
indices.put(...); ...
indices.rewind();
final PointerBuffer indicesP = PointerBuffer.allocateDirect(1);
indicesP.referenceBuffer(indices);
-> glMultiDrawElementsBaseVertex(int mode, IntBuffer count, int type, PointerBuffer indices, int primcount, IntBuffer basevertex)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GL3's glDraw*Elements*.
glCreateShaderProgramv: Param idx 2 should be String[]
All following draw commands are buffer object types, i.e. shall accept memory buffer reference (VBO/VAO/..):
+BufferObjectKind Element glDrawElementsBaseVertex
+BufferObjectKind Element glDrawElementsInstanced
+BufferObjectKind Element glDrawElementsInstancedBaseInstance
+BufferObjectKind Element glDrawElementsInstancedBaseVertex
+BufferObjectKind Element glDrawElementsInstancedBaseVertexBaseInstance
BufferObjectKind Element glDrawRangeElements
+BufferObjectKind Element glDrawRangeElementsBaseVertex
|
|
|
|
|
|
| |
i.e. allowing 4.3 and 4.4 for GL version validation.
4.4 b/c it may come up soon.
|
| |
|
|
|
|
| |
(non-blocking)
|
|
|
|
| |
already failed
|
| |
|
|
|
|
| |
use nullTask ensuring to wait until EDT started.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instances; Removing ref. at API destroy() is wrong ; Allow GC to clear ..
- Removing ref. at API destroy() is wrong
- Since all instances can be recreated, removing ref at destroy() is simply wrong.
- Keep weak references until GC collects, i.e. user does not claim them anymore.
- Safe for Display, since it holds it's EDT thread.
- Window/Screen .. if user abandons reference .. nothing we can do here.
- Allow GC to clear ..
No need to hold ref loonger than user.
|