tag:github.com,2008:https://github.com/powervr-graphics/Native_SDK/releasesRelease notes from Native_SDK2025-06-02T12:28:19Ztag:github.com,2008:Repository/25927337/R25.1-v5.142025-06-02T12:28:19ZR25.1-v5.14: PowerVR Graphics SDK v5.14 Release.<p>SDK 25.1(v5.14) release.</p>
<p>Native SDK:</p>
<ul>
<li>Added new Vulkan example: YCbCrTextureSampling.</li>
<li>Added new OpenCL example: PrefixSum.</li>
<li>Fixed Vulkan HelloAPI for Wayland, had missing calls to wl_display_roundtrip and wl_surface_commit.</li>
<li>Fixed Vulkan AmbientOcclusion segfault.</li>
<li>Fixed Vulkan Bumpmap, wrongly placed beginQueueDebugLabel.</li>
<li>Fixed Vulkan TimelineSemaphores, segfault on Linux Arm64 and validation warning.</li>
<li>Fixed Open GLES ImageBasedLighting ASTC support test.</li>
<li>Updated PVRVFrame libraries (@8d3918c4d7).</li>
<li>Updated Validation error policy, not anymore early application exit.</li>
</ul>
<p>PVRVFrame:</p>
<ul>
<li>Use sized internal formats when emulating GL_LUMINANCE8_ALPHA8_OES and GL_LUMINANCE4_ALPHA4_OES.</li>
<li>Fix validation for textures with the internal format GL_BGRA8_EXT.</li>
</ul>
<p>The documentation from this repository has been moved to <a href="https://docs.imgtec.com/" rel="nofollow">https://docs.imgtec.com/</a></p>
<p>Refer to our release notes for more details about the changes: <a href="https://developer.imaginationtech.com/downloads/latest-release-notes/" rel="nofollow">https://developer.imaginationtech.com/downloads/latest-release-notes/</a></p>AlejandroCosintag:github.com,2008:Repository/25927337/R24.2-v5.132024-09-25T11:46:26ZR24.2-v5.13: PowerVR Graphics SDK v5.13 Release.<p>SDK 24.2(v5.13) release.</p>
<p>Native SDK:</p>
<ul>
<li>Updated PVRScopeDeveloper libraries (@04bfc7e).</li>
<li>Updated PVRVFrame libraries (@cbf695b).</li>
<li>Updated Vulkan Android validation layers to v1.2.189.2 Taken from <a href="https://github.com/KhronosGroup/Vulkan-ValidationLayers/releases/tag/sdk-1.2.189.2">https://github.com/KhronosGroup/Vulkan-ValidationLayers/releases/tag/sdk-1.2.189.2</a></li>
<li>Added new GLES automotive example: Surround View.</li>
<li>Added extra Vulkan debug marker API calls to all Vulkan samples.</li>
<li>Android builds gradle version update 3.5.3 -> 4.0.1 & NDK version update 20.0.5594570 -> 26.2.11394342</li>
<li>Fixed: VulkanAntiAliasing wrong API utilization.</li>
<li>Fixed wrong render pass extents in PVRShell being set for events setting width & height to (0, 0).</li>
<li>Fixed: VulkanHelloRayTracing incorrect VkAccelerationStructureGeometryTrianglesDataKHR::maxVertex value.</li>
<li>Fixed: VulkanHelloRayTracing incorrect image layout transitions for offscreen image used to render to.</li>
<li>Fixed: VulkanHelloRayTracing had redundant call to set the acceleration structure buffer already provided.</li>
<li>Fixed: Framework incorrect VkAccelerationStructureGeometryTrianglesDataKHR::maxVertex value.</li>
<li>Fixed: removed unused extension VK_KHR_ray_query from VulkanHybridRefractions.</li>
</ul>
<p>PVRScope:</p>
<ul>
<li>Implement PVRScopeStats: add EPVRScopeEvent count enum value.</li>
</ul>
<p>PVRVFrame:</p>
<ul>
<li>Add support for GL_EXT_blend_func_extended on platforms that support OpenGL 3.2 or later.</li>
<li>Fix GLSL ES to GLSL conversion for pre-3.0 shaders that define texture, textureLod, and textureProjLod as functions.</li>
</ul>
<p>The documentation from this repository has been moved to <a href="https://docs.imgtec.com/" rel="nofollow">https://docs.imgtec.com/</a></p>
<p>Refer to our release notes for more details about the changes: <a href="https://developer.imaginationtech.com/downloads/latest-release-notes/" rel="nofollow">https://developer.imaginationtech.com/downloads/latest-release-notes/</a></p>AlejandroCosintag:github.com,2008:Repository/25927337/R24.1-v5.122024-03-22T11:27:29ZR24.1-v5.12: PowerVR Graphics SDK v5.12 Release.<p>SDK 24.1(v5.12) release.</p>
<p>Native SDK:</p>
<ul>
<li>Changes in CMake to speed up Android builds. Downgraded CMake to v3.10 and Gradle to v3.5.3. NDK 20.0.5594570 is a valid version when cross compiling for Android from Windows / Linux.</li>
<li>Added new Vulkan example: Antialiasing (MSAA, FXAA, TAA).</li>
<li>Fixed VulkanTimelineSemaphores example crashing on early exit when the extension is not supported.</li>
<li>Fixed VulkanSubgroups example no ouput on BXM-8-256: Workgroup width was being set to zero during setup.</li>
<li>Fixed OpenGLESPostProcessing and VulkanPostProcessing small artifacts on the edge of the mesh when no post processing method is being applied.</li>
<li>Fix: Making several SDK demos time deterministic when using the -forceframetime parameter (OpenGLESDeferredShading, OpenGLESGameOfLife, OpenGLESParticleSystem, VulkanDeferredShading, VulkanDeferredShadingPFX, VulkanGameOfLife, VulkanGnomeHorde, ParticleSystemGPU).</li>
<li>Fixed VulkanHelloRayTracing various buffers being built with not optimal memory properties.</li>
<li>Fixed PVRVk getCacheMaxDataSize(), initializing dataSize parameter handed to vkGetPipelineCacheData to identify cases where pipeline cached data has size 0.</li>
<li>Fixed over 170 compilation warnings.</li>
</ul>
<p>PVRVFrame:</p>
<ul>
<li>Fix the OpenGL ES 2+ implementation of 'glBlendEquation' to correctly handle the advanced blend equation modes.</li>
<li>Fix libGLESv2.so dynamic loading error symbol lookup error: undefined symbol which prevented successful loading of libGLESv2.so in some code paths.</li>
<li>Add support for GL_EXT_sparse_texture on platforms that support GL_ARB_sparse_texture.</li>
<li>Add support for GL_EXT_clip_control on platforms that support GL_ARB_clip_control or OpenGL 4.5.</li>
<li>Fix glAttachShader so it returns GL_INVALID_OPERATION if a shader is passed in of a type that is already attached to the target program.</li>
<li>Fix glReadPixels reading from framebuffers that make use of glFramebufferTexture2DMultisampleEXT|IMG.</li>
</ul>
<p>The documentation from this repository has been moved to <a href="https://docs.imgtec.com/" rel="nofollow">https://docs.imgtec.com/</a></p>
<p>Refer to our release notes for more details about the changes: <a href="https://developer.imaginationtech.com/tools/release-notes/" rel="nofollow">https://developer.imaginationtech.com/tools/release-notes/</a></p>AlejandroCosintag:github.com,2008:Repository/25927337/R23.2.1-v5.11.12023-11-30T12:57:46ZR23.2.1-v5.11.1: PowerVR Graphics SDK v5.11.1 Release.<p>Native SDK:<br>
Fix: OpenGLESAntiAliasing now exits when requested by user.<br>
Fix: VulkanExampleUI was crashing on Doma devices (Rogue) with DDK 1.11.<br>
Fix: VulkanHybridTransparency resource not missing due to incorrect case on Linux systems.<br>
Fix: VulkanHybridRefractions maxRecursionDepth correctly defined.<br>
Fix: VulkanPostProcessing crash.<br>
Fix: VulkanSPHFluidSimulation exits with no issue.<br>
Fix: VulkanSubgroups had a wrong output.<br>
Fix: Framework has a different implementation in Time::getElapsedNanoSecs() fixing issues observed on Linux systems (both x86_64 and arm64).<br>
Fix: Various documentation links.<br>
Temporally removing Safety Critical demos for improve performance and general look.</p>AlejandroCosintag:github.com,2008:Repository/25927337/R23.2-v5.112023-09-22T22:00:57ZR23.2-v5.11: PowerVR Graphics SDK v5.11 Release.<p>PowerVR Graphics SDK v5.11 Release.</p>
<p>SDK 23.2(v5.11) release.</p>
<p>Native SDK:</p>
<ul>
<li>Astc as preferred format over PVRTC.</li>
<li>Fixing validation errors in four SDK examples (HybridHardShadows, HybridReflections, HybridSoftShadows, RayTracingDenoising).</li>
<li>Updated toolchains for QNX (armv7, armv8, gcc-x86_32, gcc-x86_64).</li>
<li>Framework & SDK: Extend max swapchain number in all Vulkan demos, making swapchain images completely dynamic for any swapchain number.</li>
<li>Framework: Added new module for GL ES Safety Critical applications on Automotive.</li>
<li>Subgroups Demo validation: Verification subgroup size is greater than zero.</li>
<li>Fix in HelloRayTracing Vulkan Demo removing unneded memory properties for buffer allocations.</li>
<li>Fix in PipelineCache Vulkan Demo to return correct piepline cache size.</li>
<li>PVRScope libraries update to PVRTune Developer 23.1.</li>
<li>Added new GL ES Safety Critical Example: Automotive Surround View.</li>
<li>Added new GL ES Example: Shader Based Anti Aliasing Demo.</li>
<li>Added new Vulkan Example: GPU-controlled rendering.</li>
<li>Added new Vulkan Example: SPH Fluid simulation.</li>
<li>Added new Vulkan Example: Timeline semaphores.</li>
</ul>
<p>The documentation from this repository has been moved to <a href="https://docs.imgtec.com/" rel="nofollow">https://docs.imgtec.com/</a></p>
<p>Refer to our release notes for more details about the changes: <a href="https://developer.imaginationtech.com/tools/release-notes/2023-r2/" rel="nofollow">https://developer.imaginationtech.com/tools/release-notes/2023-r2/</a></p>AlejandroCosintag:github.com,2008:Repository/25927337/R23.1-v5.102023-03-31T10:13:22ZR23.1-v5.10: PowerVR Graphics SDK v5.10 Release.<p>SDK 23.1(v5.10) release.</p>
<p>Native SDK:</p>
<ul>
<li>PVRUtils: Improved feedback on Vulkan for no compatible memory types found. Fixed incorrect mappability, now only HOST_VISIBLE_BIT is taken into account.</li>
<li>PVRVk: Added missing success check for vkDeviceWaitIdle. Fixed construction of pvrvk::DescriptorPool when using descriptors of types VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT, VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR, VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV.</li>
<li>PVRScope: Fixed SDK Make error when looking for libPVRScopeDeveloper.a library for Linux_armv8_64.</li>
<li>PVRShell: Migrated from wl_shell to the newer xdg_shell provided by wayland-protocols. Fixed Wayland surface-related errors.</li>
<li>Framework: Added get supported depth stencil format overload without display attributes.</li>
<li>Ray tracing examples fixes: Allowed packing of transformation matrices for shaders when VkPhysicalDeviceLimits::minUniformBufferOffsetAlignment has value different from 64, fixed validation errors.</li>
<li>OpenGLES PostProcessing demo: Changed default buffer mapping behaviour to be non-coherent. Added manual flushing for mapped buffers and -coherent flag option to enable coherent buffer mapping.</li>
<li>Vulkan HelloRayTracing demo: Removed serialisation on renderImage, avoiding potential performance bottleneck.</li>
</ul>
<p>The documentation from this repository has been moved to <a href="https://powervr-graphics.github.io/" rel="nofollow">https://powervr-graphics.github.io/</a></p>
<p>Refer to our release notes for more details about the changes: <a href="https://developer.imaginationtech.com/tools/release-notes/2023-r1/" rel="nofollow">https://developer.imaginationtech.com/tools/release-notes/2023-r1/</a></p>AlejandroCosintag:github.com,2008:Repository/25927337/R22.1-v5.92022-06-29T16:11:50ZR22.1-v5.9: PowerVR Graphics SDK v5.9 Release.<p>SDK 22.1(v5.9) release.</p>
<p>Native SDK:</p>
<ul>
<li>Changed Instance creation methodology to ensure that applications target a specific version of Vulkan instead of targeting the Vulkan loader version on the device.</li>
<li>Allowed users to initialise UI Renderer with a custom font, given an image view.</li>
<li>Allowed users to set the flags required for the debug call back messenger to log during the instance creation and destruction. Defaults to only errors and warnings.</li>
<li>Allowed users to specify validation warnings to disable by passing a vector of IDs</li>
<li>Updated CMake to 3.18</li>
<li>Updated Gradle build tools to 4.1.2</li>
<li>Added new Vulkan Raytracing Example: Hybrid transparency.</li>
<li>Added new Vulkan Example: Subgroups.</li>
<li>Added new GL ES and Vulkan Examples: Shadows.</li>
<li>Added new Vulkan Raytracing Example: Denoising.</li>
<li>Explicitly set the targeted instance version. Previous examples would set the instance version to the highest one supported on the device.</li>
<li>Simplified the Vk device extension feature loading, especially in the RT examples.</li>
<li>Set the Vulkan raytracing demos to Vulkan version 1.1.</li>
</ul>
<p>PVRVFrame:</p>
<ul>
<li>Fixed ASTC glTexStorage emulation on Intel GPUs.</li>
<li>Fixed a bug in glFramebufferTextureLayer that could cause an invalid operation error or the wrong texture to be attached.</li>
<li>Worked around Intel link program error “Varying ‘gl_PerVertex;_IN’ has different block does not match across different shaders.” that could occur when using geometry shaders.</li>
</ul>
<p>The documentation from this repository has been moved to <a href="https://powervr-graphics.github.io/" rel="nofollow">https://powervr-graphics.github.io/</a></p>
<p>Refer to our release notes for more details about the changes: <a href="https://developer.imaginationtech.com/tools/release-notes/2022-r1/" rel="nofollow">https://developer.imaginationtech.com/tools/release-notes/2022-r1/</a></p>AlejandroCosintag:github.com,2008:Repository/25927337/R21.2-v5.82021-11-24T17:52:41ZR21.2-v5.8: PowerVR Graphics SDK v5.8 Release.<p>SDK 21.2(v5.8) release.</p>
<p>Native SDK:</p>
<ul>
<li>Removed documentation from the SDK to reduce the size of the repo.</li>
<li>Remove VK_LAYER_ARM_mali_perf_doc from framework, as validation layer features has same functionality, Keep IMG_PERF_DOC for img specific best practices validation.</li>
<li>New Assets : Saloon POD scene and textures</li>
<li>Fixed OpenGL ES Image Based Lighting shader compile error on retail PowerVR devices.</li>
<li>New Vulkan Raytracing Example: Hybrid ray traced refractions.</li>
<li>Replace VK_LAYER_ARM_mali_perf_doc with VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT in VulkanHelloAPI, VulkanIntroducingPVRShell and VulkanIntroducingPVRVK.</li>
<li>Fix DTEC-2216: PVRScope: pplWaitForConnection() needs to take an array of pointers.</li>
<li>New Vulkan Raytracing Example : Fully RayTraced Hard Shadows</li>
<li>New Vulkan Example: Ambient Occlusion</li>
<li>New Vulkan Raytracing Example: Hybrid Soft Shadows.</li>
</ul>
<p>PVRVFrame:</p>
<ul>
<li>When converting glsl es shaders to glsl we now strip out "#extension GL_EXT_texture_buffer" directives.</li>
<li>glPopGroupMarker will no longer error if there isn't something to pop.</li>
<li>Fixed GL_EXT_buffer_storage emulation so it no longer exposes glNamedBufferStorageEXT. This function should only be exposed if GL_EXT_direct_state_access is supported (which it isn't).</li>
<li>Fixed the GL_SHADING_LANGUAGE_VERSION string so it has a space between the version and the vendor specific information.</li>
<li>Fixed a bug in glIsVertexArray where it could return GL_TRUE if the name is 0.</li>
<li>Fixed a crash on Linux that would occur if GLX_EXT_framebuffer_sRGB was not supported.</li>
<li>Fixed a bug where glGetTexParameter would incorrectly return invalid enum if the target was GL_TEXTURE_CUBE_MAP_ARRAY.</li>
<li>Fixed the EGL_VERSION string so it fits the format described in the egl spec.</li>
<li>eglQueryString now works with EGL_NO_DISPLAY and EGL_VERSION to return the client version.</li>
<li>glBindSampler now returns GL_INVALID_VALUE if the texture unit index is greater than the current profile's GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS value.</li>
<li>The host profile's GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS is no longer capped at 32.</li>
<li>GL_OES_vertex_array_object is now only added to the extension string if it can be emulated.</li>
<li>Fixed a bug where calling glGetFramebufferAttachmentParameteriv on an attachment created with glFramebufferTexture2DMultisample* could return invalid enum.</li>
</ul>
<p>The documentation from this repository has been moved to a new repository covering exclusively documentation, the URL will be specified once it is released.</p>
<p>Refer to our release notes for more details about the changes:<br>
<a href="https://developer.imaginationtech.com/tools/release-notes/" rel="nofollow">https://developer.imaginationtech.com/tools/release-notes/</a></p>AlejandroCosintag:github.com,2008:Repository/25927337/R21.1-v5.72021-05-12T14:22:24ZR21.1-v5.7<p>R21.1(v5.7)</p>omarzohditag:github.com,2008:Repository/25927337/R20.2-v5.62020-12-11T12:30:14ZR20.2-v5.6<p>R20.2(v5.6)</p>omarzohdi