| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
of IOException
|
|
|
|
|
|
|
|
|
| |
chosen ones (x11,win32,..) - they are not fit
The previous chosen caps might come from GLX, WGL .. however, these caps doesn't reflect EGL's
capabilities - they may reflect less features.
This fixes missing MSAA on linux/armv7 w/ GLX enabled.
|
|
|
|
|
|
|
|
| |
- Subsume GL_EXT_texture_format_BGRA8888 -> GL,
Added GLContext.isTextureFormatBGRA8888Available()
- Movied generic isNPOTTextureAvailable() from GL -> GLContext, used by GL (desktop),
added simplified impl. in GLES1/GLES2 (false/true)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLProfile.get<Profile>() methods.
We need to distinguish between software and hardware accelerated OpenGL profiles
to allow choosing the proper profiles [default, GL2ES1, GL2ES2, ..]
on platforms where both, software and hardware implementations exist (GL, GLES2, ..).
Where no preference is being requested, hardware acceleration is favored:
GLProfile.getDefault()
GLProfile.getGL2ES1()
GLProfile.getGL2ES2()
Some method signatures needed to change
GLProfile:
getMaxProgrammable(AbstractGraphicsDevice device) ->
getMaxProgrammable(AbstractGraphicsDevice device, boolean favorHardwareRasterizer)
GLProfile adds: isHardwareRasterizer()
Determination whether a hardware acceleration is being used or not
is extended in GLContextImpl by querying the current context's
GL_RENDERER string. If the latter contains 'software' (case insensitive)
it is not hardware accelerated. At least this works w/ newer Mesa3D impl,
where GLX_SLOW_CONFIG is not set!
|
| |
|
|
|
|
| |
ShaderState.attachShaderProgram(..)
|
| |
|
| |
|
|
|
|
|
|
| |
- Add multiple sources for create ShaderCode
- Add Shaderstate attachShaderProgram w/ enable flag
- Clarify doc
|
|\
| |
| | |
Add make/scripts/make.jogl.all.linux-armv7.sh
|
|/
|
|
| |
Signed-off-by: Xerxes Rånby <[email protected]>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- New EGL/ES headers from 2012-01-xx
- Subsuming ES extensions to core,
allowing aliasing of more enums/funcs to GL or GL2ES1/GL2ES2:
GL_EXT_color_buffer_half_float
GL_EXT_occlusion_query_boolean
GL_EXT_robustness
GL_ARB_robustness
GL_EXT_separate_shader_objects
GL_EXT_shadow_samplers
GL_EXT_sRGB
GL_EXT_texture_array
GL_EXT_texture_rg
GL_EXT_texture_type_2_10_10_10_REV
GL_NV_draw_buffers
GL_NV_fbo_color_attachments
GL_EXT_packed_float
GL_EXT_texture_storage
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Use Gluegen.debug() setting
- BuildStaticGLInfo.getExtension(name) returns a set of all extension where name occurs
- GLConfiguration.shouldIgnoreExtension() reflects all extensions,
inclusive the renames one and gives a warning in case the symbol belongs
to multiple extension - in debug mode!
- API comment: List all extensions, incl. the one from the renames,
this allows having a proper list to which extensions the define/function belongs to.
|
|
|
|
|
|
|
|
|
| |
Note: EXT_shader_image_load_store is dropped to favor ARB_shader_image_load_store
Since no new (4.2) extension still does not require >= 3.1
all extensions are visible within the common profile GL2GL3.
Please review!
|
|
|
|
| |
for profile, allowing test on OSX (only has GL3 core profile at max).
|
|
|
|
| |
(not GL4) and check. Ooops.
|
|
|
|
| |
and debug context.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ExtensionAvailabilityCache regression / enhancement:
- Set context version (w/o string) before caching.
This is required since we query the ctx version.
Regression from 4011e70eed8c88aee0fcd051a50ab3f15bb94f68
- Remove GLContextImpl state. Only use the passed value at initialization.
- Defined initialization, due to the 'new' cache/instantiation logic
Remove redundant GLContext profile bits:
- CTX_OPTION_ANY: implicit if !CTX_OPTION_FORWARD
- CTX_IMPL_ACCEL_HARD: implicit if !CTX_IMPL_ACCEL_SOFT
Cache key (ProcAddressTable, Extensions):
- Mask out GLContext.CTX_OPTION_DEBUG | GLContext.CTX_IMPL_ES2_COMPAT,
since they don't influence the cached values.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(and clean up)
- GLContext
- Expose isFunctionAvailable(), isExtensionAvailable(),
getPlatformExtensionCount(), getGLExtensionCount()
- sort methods a bit
ExtensionAvailabilityCache:
- Favor StringBuilder instead of StringBuffer (faster)
- Resuse set's
- Hold dedicated counts of extensions, platform and GL
|
|
|
|
| |
TestGLProfile01NEWT
|
| |
|
|
|
|
|
|
|
|
|
| |
JAWT/JAWTUtil
- Support OSX/Java7 CALayer only JAWT mode
- Cleanup JAWT/JAWTUtil while
moving elaborated logic and data to JAWTUtil, leave generated JAWT simple.
|
|
|
|
| |
- be verbose about features in DEBUG mode (RECT, NPOT, APPLE_float_pixels)
|
| |
|
|
|
|
|
|
|
|
|
| |
Bug caused using wrong extension cache and probably the wrong procAddress table.
- do not reuse local field value if not cached
- issue resetState() after each createContextARBMapVersionsAvailable(..) query
- remove cache entry for extension (copy/paste bug)
- resetState() shall clean platform extProcAddressTable in specializations
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- GLProfile properly detects native EGL/ES1/ES2 on the 'desktop' device factory.
This allows usage of Mesa's EGL/ES or Imageon's PVR emulation, etc.
- GLProfile drops getDefaultDesktopDevice() and getDefaultEGLDevice()
since both are aligned by getDefaultDevice().
- Fix GL_ARB_ES2_compatibility detection and utilize
resulting isGLES2Compatible() where possible.
This allows ES2 compatible desktop profiles to use core ES2 functionality
(glShaderBinary() .. etc) even with a GL2ES2 desktop implementation.
- EGLDrawable: If createSurface(..) fails (BAD_NATIVE_WINDOW) w/ surfaceHandle
it uses windowHandle if available and differs.
This allows the ANGLE impl. to work.
- Properly order of EGL/ES library lookup:
ES2: libGLESv2.so.2, libGLESv2.so, GLES20, GLESv2_CM
EGL: libEGL.so.1, libEGL.so, EGL
- *DynamicLookupHelper reference will be null if it's library is not complete
(all tool libs, all glue libs and a ProcAddressFunc lookup function - if named).
- Enhance GL version string (incl. ES2 compatible, hw/sw, ..)
- GLBase: Fix docs and remove redundancies
- Prepared (disabled) DesktopES2DynamicLibraryBundleInfo
to be used for a real EGL/ES2 implementation within the desktop GL lib (AMD).
Sadly it currenly crashed within eglGetDisplay(EGL_DEFAULT_DISPLAY),
hence it's disabled.
|
|
|
|
| |
after releasing parent lock (AWT lock).
|
| |
|
|
|
|
| |
(implicitly loaded by NativeWindowFactory)
|
| |
|
|
|
|
|
|
| |
Turns out, that the culprit (at least on my Win7 NVidia machine) is
the runtime property "-Dsun.java2d.opengl=false".
When _not_ setting this prop. the test runs fine.
|
|
|
|
|
|
|
|
|
|
| |
performance issues.
Chris reported a better performance using glFlush() instead of glFinish()
while maintaining stability in respect to the NV bug on OSX 10.6.8.
Even though this is at release() where we would assume a passed GL sync point (swap buffers)
the driver may involve a whole I/O roundtrip .. well.
|
|\ |
|
| |\
| | |
| | | |
Fixed SWT threading policy violation when using worker mode for JOGL threading.
|
| | |
| | |
| | |
| | | |
mode). See discussion in Bugzilla #484
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
framework, NEWT)
- Fix Bug 516 (Determine Java Version).
See gluegen: 64639b805a32338385421f168e12c1ef7f749d00
- Fix OS X 10.5 linkage (weak framework, NEWT)
- Use weak framework linkage for all modules and frameworks:
AppKit, QuartzCore, Cocoa, OpenGL, JavaNativeFoundation
- NEWT: Handle NS exception while calling OS X >= 10.6 only methods:
- 'setAllowsConcurrentViewDrawing()'
- 'setCanDrawConcurrently()'
|
| | |
|
| |
| |
| |
| | |
event is pending
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- allocate CALayer w/ invoking init:
[[CALayer alloc] init]
- attach CALayer to JAWTSurfaceLayer w/o autorelease:
surfaceLayers.layer = layer; // already incr. retain count
- destroy CALayer @ JAWTWindow destroy
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- toFront*(..) uses the AWT Window focus state, instead of our AWTWindowFocusAdapter,
which removes false negatives.
Often the focus is already hold on the Window where no focus change
will be recognized by our AWTWindowFocusAdapter.
- assertRequestFocusAndWait(..) recovers from lack of focus-lost event
(if received focus-gained) and only dumps the case - returns success.
- Since assertRequestFocusAndWait(..) implicitly tests the passed
FocusAdapter and relaxes the constraints (see above)
no more post-call assertions on the FocusAdapter is being performed (removed).
- assertRequestFocusAndWait(..) is no more used on AWT Window or Frame,
see 1st note above!
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Due to latest changes, a bug is disposed where the native 'updateInsets'
attempts to determine the window insets by it's parent window (fall-back).
The latter works only in case of a top-level window.
Adding query to the WM whether the window is decorated (top-level) or not.
Attempt to use the fall-back parent window method in case of a decorated window.
This whole inset code based on the parent window is probably completly redundant,
nevertheless we keep it alive until further notice.
|