It has been a fair few months since our last release, and during this time we have been improving our utilities and SDK to add even more functionality to our already powerful package. Our efforts have been mainly focused on adding new Vulkan demos to our SDK, adding support for a brand new PowerVR Effects (PFX) format targeted to Vulkan and enhancing the functionality and user interface of PVRShaderEditor, PVRTrace and PVRTune. We have also added full FBX support to PVRGeoPOD.
In addition, we have done some tweaking and improvements to PVRHub, PVRShaderEditor, PVRShaman, PVRTexTool, and PVRVFrame, all of which are detailed in the Release Notes. And that’s not all – we’ve also taken steps to improve our documentation, making sure you can understand exactly what all our little tweaks and changes are and how to make best use of them when working with our utilities.
With our Framework continuing to be our most popular offering, we have carried out a variety of refinements to make it easier to use. One of these is the creation of new and dedicated documentation – the PowerVR Framework Development Guide. Designed to help out developers still getting to grips with the Framework, it offers a host of information about how it works and the best way to make it work.
We have ported several demos to Vulkan which include amongst others:
- DeferredShading – this demonstrates multiple subpasses with framebuffer attachments using local memory
- ParticleSystem – this shows compute physics
- PVRScopeExample and PVRScopeRemote – these show how to interact with PVRTune and access the HW counter
In addition to this, we have added support for Vulkan on Linux x11, and have released version 3.0 of our PFX format. This is a complete departure from the previous format to make it modern and more suitable for the Vulkan API.
PVRTrace has undergone a few tweaks over the past few months; while the majority of the work done to it has been “under the hood” so to speak, the GUI has also undergone a few changes. An option to specify the frame delimiter from a list of relevant API functions has been added to allow proper handling of applications that do not use SwapBuffers.
We have also carried out several improvements on the PVRTrace Recorder. We have added a pair of new advanced configuration options to the “Tracing” section:
- “UniformBufferOffsetAlignment” allows the user to override the returned value of GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT.
- “ShaderStorageBufferOffsetAlignment” allows the user to override the returned value of GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT.
PVRTune always undergoes a variety of revisions whenever we update the PowerVR Tools and SDK, and this release is no different. We have expanded the counter list to now include “triangle ratio” and “slot occupancy”, which are fully described alongside all other counters. We have also added the ability for it to search for dynamic marks.
Several changes have also been made to the Preference options, making the tool even more user-friendly. We’ve improved the PID window, and ensured full compatibility with PowerVR GX6650 devices, and we’ve also added more options to the Preferences menu. You can now use the Edit menu to choose between three clock transform algorithms: Auto, DDK or Specified Clock Speed.
We’ve only covered the utilities with the most changes in this blog post, but a full list of the changes introduced in this version of the PowerVR Tools and SDK is available.
If you have any questions, our support team are ready to assist on the forums, or through our ticketing system.