This post by Peter Messmer on the NVIDIA Parallel Forall blog provides the basic steps to create a (full) OpenGL context using EGL in a headless environment, with code examples. EGL context creation is particularly relevant for accelerated rendering on HPC systems or in a cloud environment, where context management via X11 is often times impractical. Applications include in situ visualization and CUDA/OpenGL interoperation.
Mesa 11.0.3–according to the internal release notes–is a major bugfix release that resolves the KDE and Weston regressions that have been introduced in the previous release of the software, Mesa 11.0.2. Additionally, Mesa 3D Graphics Library 11.0.3 has a great number of patches for EGL and includes numerous bugfixes, especially for the Intel i830, Intel i915, Intel i965, RadeonSI, and Nouveau graphics drivers, as well as various under-the-hood improvements. "Mesa 11.0.3 is now available. In the current release we have a bunch of EGL patches, mangledGL build fixes and a healthy amount of driver bugfixes - RadeonSI, Nouveau, Intel i915 and i965," says Emil Velikov, software release engineer for Collabora. "Last but not least, the KDE/Weston regression introduced with 11.0.2 has also been resolved."
The PowerVR Imaging Framework for Android comprises a set of extensions to the OpenCL and EGL Application Programming Interfaces (APIs) that enable efficient interoperability of software running on PowerVR GPUs with other components such as a CPU, ISP and VDE. These extensions enable the construction of shared memory allocations and software pipelines across multiple hardware components with no redundant memory copies (termed zero-copy). The framework is integrated at the library layer of the Android software stack, enabling efficient interoperability between APIs such as OpenCL, OpenGL ES and emerging APIs such as OpenVX.
This is a tool to generate OpenGL function loaders. Select the language, OpenGL / OpenGL ES versions, core or compat profiles, and hit generate. The tool generates a header file with the declarations for the GL functions and enums for the chosen GL version, and generates a little C source file that resolves all of the functions at runtime. Many thanks to Mark Sunet on LinkedIn for pointing us to this project.
The Khronos Group today announced a number of new and significant updates to its portfolio of open, royalty free industry standards that enable the authoring and acceleration of parallel computing, graphics, vision, sensor processing and dynamic media on a wide variety of platforms and devices:
- OpenGL® ES 3.1 Specification Released – The next leap in mobile & embedded graphics
- WebCL™ 1.0 Specification Released – Browser-based heterogeneous compute acceleration
- SYCL™ 1.2 Provisional Specification Released – Enabling high-level C++ tools for OpenCL
- OpenCL™ 2.0 Adopters Program Launched – Driving OpenCL 2.0 conformance
- EGL™ 1.5 Specification Released – The essential glue for secure, integrated API rendering
The Khronos Group today announced the ratification and release of the EGL 1.5 specification. EGL is an open, royalty-free standard that defines a portable interface to underlying operating system and display platforms to handle graphics context management, surface and buffer binding, and rendering synchronization. EGL also provides interop capability to enable efficient transfer of data and events between Khronos APIs. The new EGL 1.5 specification incorporates functionality for enhanced rendering flexibility and security, improved interop between OpenGL or OpenGL ES and OpenCL for mixed compute and rendering acceleration, and standardized support for multiple common operating systems including Android and 64-bit platforms.
drawElements announced that Vivante Corporation has subscribed to the drawElements Quality Program. The drawElements Quality Program focuses on quality assurance and consists of multiple API test modules that ensure robust OpenGL ES, EGL, and OpenCL vendor implementations.
The Khronos EGL Working Group is requesting feedback on a change to the definition of EGLint that would disallow using handles as attribute values. If you have feedback on this change, please post it in the discussion boards where the proposed change is described in more detail.
Imagination Technologies has developed a set of extensions to allow image conversion on the fly, using the Khronos Groups OpenCL and EGL technology. ImgTec converts the camera YUV data to RGB using the OES_EGL_image_external extension, and then use PowerVR’s zero-copy functionality to directly access the camera texture data from OpenCL. Find the in-depth explanation on ImgTec's website.
Imagination Technologies has implemented a set of image and video handling extensions to the EGL Native Platform Interface to enable developers to create high-performance GPU compute applications on the new low-cost Hardkernel ODROID-XU development system. The new OpenCL API extensions enable developers to implement Instagram-like functionality on real-time camera data, including computational photography and video processing, while offloading the main CPU by providing resource sharing and interoperability between the camera pipeline, OpenGL ES graphics and OpenCL compute APIs. Imagination will be releasing the PowerVR GPU compute SDK and programming guidelines for PowerVR Series5XT GPUs and there is an upcoming release of the popular PowerVR Graphics SDK v3.2 featuring OpenCL support in PVRTrace for PowerVR Series6 GPUs.