PowerVR SDK v5.14
General
- Updated PVRVFrame libraries (@8d3918c4d7).
- Updated Validation error policy, not anymore early application exit.
Examples
- Added new Vulkan example: YCbCrTextureSampling.
- Added new OpenCL example: PrefixSum.
- Fixed Vulkan HelloAPI for Wayland, had missing calls to wl_display_roundtrip and wl_surface_commit.
- Fixed Vulkan AmbientOcclusion segfault.
- Fixed Vulkan Bumpmap, wrongly placed beginQueueDebugLabel.
- Fixed Vulkan TimelineSemaphores, segfault on Linux Arm64 and validation warning.
- Fixed Open GLES ImageBasedLighting ASTC support test.
PVRTune v14.159
Documentation
- PVRPerfServer improve Android installation documentation.
General
- Implement new QNX710 io-sock build in addition to existing io-pkt build, for aarch64le and x86_64 only, it looks like the QNX710 toolchain does not support io-sock for armle-v7. Also add QNX800 (io-sock) build, for aarch64le and x86_64 only, it looks like QNX800 does not support armle-v7.
- Implement Android riscv64 builds.
- Implement update Android SW versions used for builds.
- Fix re-send process cmdline when it changes; fixes display for PVRPerfServer –exec processes on Linux/Android.
GUI
- Implement optimisations for loading a very large PVRTune file.
- Reduce large-file load time: reduce forced draw rate to 1FPS.
- Implement update to latest Linux build tools and Qt-6.8.1.
- Implement preferences dialog box now displays set paths and allows them to be cleared.
PVRPerfServer
- Implement set Android APK “minSdkVersion 26”.
PVRCarbon v0.14
General
- Add clFlush and clFinish as optional frame delimiters (disabled by default).
- Add eglCreateSync* calls as optional frame delimiters (disabled by default).
- Update Vulkan support to 1.4.304.
Export To C++
- Fix exporting of clCreateContext calls that make use of CL_CONTEXT_PLATFORM.
- Increase the minimum c++ version required to C++17.
- Fix the URL used for downloading the Vulkan Validation Layers.
Export to TXT
- Replace the multiline and singletext formats with a common txt format and new command-line options –multi-line and –single-line.
- Add support for exporting call data to JSON (–format=json).
Player
- Add support for glTexStorage2DEXT and glTexStorage3DEXT playback.
- Implement playback support for EGL_KHR_debug.
- Filter EGL_SURFACE_TYPE bit EGL_MUTABLE_RENDER_BUFFER_BIT_KHR from EGL config selection during playback if EGL_KHR_mutable_render_buffer is unsupported.
- Add naming of the playback threads.
- Fix VK_KHR_display playback.
- Add support for playing back incomplete calls that are recorded as a result of the host call crashing before returning.
- Add support for downscaling captured frames (–capture-frames-downscale).
- Add support for playing back eglCreateImage calls that use EGL_NATIVE_SURFACE_TIZEN client buffers.
- Add support for patching recorded buffer references with playback buffer references within push constants blocks.
- Fix playback of vkResetCommandPool.
- Fix playback of vkGetRayTracingShaderGroupHandlesKHR.
Recorder
- Fix an issue in the page_guard memory tracking implementation caused by multiple threads accessing the tracked memory at the same time.
- Add /tmp/ and /opt/ as potential paths on Linux for loading the PVRCarbon config file from.
- Change the disable_environment Vulkan layer manifest entry for VK_LAYER_POWERVR_carbon to DISABLE_VK_LAYER_POWERVR_CARBON.
- Add support for recording thread names.
- Add support on Android for starting and stopping manual recording via system property pvrcbn.record.
- Add support on Android for exiting the application while manual recording via system property pvrcbn.exit.
- Add support for recording EGL_NATIVE_SURFACE_TIZEN client buffers.
- Add support for disabling provisional extensions. This feature is enabled by default and is controlled by the disable provisional option.
GUI
- Add recorded thread names to the Threads widget.
- Add the call result to the Current Call widget.
Frame Analysis
- Improve performance in general.
- Added support for compressing large data. This feature is enabled by default and can be controlled with –large-data-compression. See –large-data-compression command-line description in the documentation for more information.
PVRTextool v5.7.0
PVRTexLib
- Rework the PVRTexLib_SaveTextureToMemory API (and PVRTexture::SaveTextureToMemory in the C++ wrapper) to allow for improved user memory allocation and management.
- Added new PVRTexLib_SaveTextureDataToMemory API to PVRTexLib (and PVRTextureHeader::SaveTextureDataToMemory to the C++ wrapper). This API is similar to the existing ‘save to memory’ routines but allows for texture data to be specified alongside a texture header. The API currently only supports saving to PVR.
- Added new PVRTexLib_CreateTextureHeaderFromData API to PVRTexLib (and PVRTextureHeader constructor to the C++ wrapper). This API allows construction of a texture header from a pointer that includes a header structure as laid out in a file.
PVRVFrame v10.17.1
- Use sized internal formats when emulating GL_LUMINANCE8_ALPHA8_OES and GL_LUMINANCE4_ALPHA4_OES.that support
OpenGL 3.2
or later. - Fix validation for textures with the internal format GL_BGRA8_EXT.
PVRStudio v1.0.6
General
- Improved way of retrieving device details (Linux / Android).
- Switching IPv4 extraction (and extra checks) on ADB bridge.
- Fix Debugger won’t trigger proper callback notification from RSP bridge.
GUI
- Filtering out unwanted kits.
- Tooltip fix (CPU Debugger).
- Added new type of CPU register (CodeRegister / DataRegister).
- Implement Debugger plugin frontend from scratch for RSP+Dwarf bridge (Linux/Windows/Android).
IMGDebugger
- Added instruction level stepping capability.
- Added support for LLDB server.
- Added support for AArch64 target architecture.
- Added support for PE file format, enabling debugging Windows targets.
- Added support for debugging shared libraries.
- Optimized Remote Serial Protocol (RSP) communication, vastly improving performance.