作者: Tom Lewis
2020年是充满挑战的一年,但我们希望大家都还过得不错。过去的几个月里,DevTech团队一直在努力发布这个新版本,现在我们宣布PowerVR SDK 2020 Release 2正式上线。
点击下方按钮,即可下载 PowerVR SDK 2020 Release 2
那么,最新版本有什么新特性呢?让我们快速了解一下主要变化。
PVRTexTool
PVRTexTool 是纹理编码和预处理工具,旨在轻松优化您的应用纹理。
此版本中对PVRTexTool进行了许多重大更新,包括一些强大的新特性和视觉上的大调整。
GUI 大幅调整
这是全新的PVRtextoolGUI。正如您在此图像中所看到的,我们添加了一个新的黑色主题,并改进了GUI整体布局和响应速度。新的布局为纹理提供了尽可能多的空间,允许您更详细地检查它们。
PVRTexLib 重新设计
此外,我们还更新和重新设计了PVRTexLib库。PVRTexLib允许您在应用程序中使用PVRTexTool的所有纹理处理功能,包括编码、调整大小和mipmap生成。
现在存在三种不同的访问PVRTexLib功能的方式:
- 全新的C界面
- 重新设计的C++接口,封装C接口。将PVRTexLib 集成到C++ 将更方便。
- Python 绑定库—PVRTexLibPy。用户能够从Python 脚本中访问所有PVRTexLib功能。
- 所有这些接口都用PVRTexTool 打包在库文件夹中。C 接口包含在使用PVRTexlib.h文件名的项目中,C++包装器可在 PVRTexLib.hpp 中查找。
当库文件与脚本位于同一位置时,可以使用简单的"import"语句从 Python脚本访问PVRTexLibPy接口。
需要注意的是,新的API与较旧版本的PVRTexLib库不兼容。
等矩形到立方图
我们添加了从等矩形图像中创建立方体贴图纹理的支持。您可以通过 GUI 做到这一点,或使用 PVRTextool CLI(equi2cube)中的新选项。等矩形图像是球体投影到矩形图像上。它们通常用于环境地图。等矩形图像的纵横比必须为 2:1 才能被接受。
Inf 和NaN高亮显示
PVRTexTool现在支持浮点格式的NaN和 Inf像素值的可视化。这些值以特定颜色高亮显示,以使其更加明显。您可以通过【查看】 ->【更改Nan/Inf 颜色】来更改高亮颜色。
其他变化
PVRTexTool 还有一些其他更细微的变化:
- PVRTexTool插件现在支持 Autodesk 3ds Max 2019/20 和 Autodesk Maya 2018。PVRTexTool中依然会提供这些旧版本工具的插件。
- 添加了对 ASTC HDR 压缩格式以及 BC4 和 BC5 格式的支持
- 压缩纹理时,PVRTexTool 现在支持更多的PVRTC模式。支持的PVRTC质量模式包括:低(2 通道)、普通(4/5 通道)、高(6 通道)、超高(8 通道)、完全(16 通道)和最佳(32 通道)。
- PVRTexLib已更新,允许加载和保存到 KTX2 文件
- 我们还添加了对BASISU格式的支持,包括BASISU_ETC1S和BASISU_UASTC
- PVRTexTool现在支持RGBM和RGBD(共享乘数和共享除数)格式
PVRCarbon
PVRCarbon是 OpenGL®ES 和 Vulkan®的 API 跟踪和调试工具。它允许深入了解应用程序和图形API的交互方式。它还具有简单的应用程序录制界面,只需单击几下即可录制远程设备上API的调用。PVRCarbon录制存储应用程序的 API 调用,这些调用可以在GUI 中回放,允许应用程序输出的精确再生成。可以在任何可以运行 PVRCarbon 的设备上播放录制,以进行真正的跨平台分析。
我们在这个版本的PVRCarbon添加了各种新特性和错误修复,调试和优化应用程序将更容易。
帧分析
该版本的主要新特性之一是帧分析。
现在,您可以详细检查应用程序的单个帧,包括执行单个绘制调用。
您还可以分析整个API渲染状态并查看对象,如着色器、纹理和帧缓冲区。
帧分析GUI适用于Vulkan和OpenGLES应用程序。通过配置到所需帧并点击分析窗口中的【分析当前帧】按钮来分析录制中的帧。
需要注意的是,您只能分析PVRCarbon 20.2及之后版本的录制。在此前版本上的录制则无法进行分析。
分析的帧将显示在此窗口中的列表中。单击某个帧将自动打开帧分析工具。分析数据存储在 pvrcbna文件中,这些文件完全独立于其原始录制。这些文件也可以使用PVRCarbon中的新命令行工具生成。
安卓图层
PVRCarbon 现在与 Android OpenGL ES 录制层打包在一起。这可以用于Android10 及之后版本,而非使用由PVRCarbonInstaller.sh脚本安装的驱动程序替换库。这是在Android 10+上执行独立/系统录制所推荐的最安全方式,在旧版 Android上则使用PVRCarbonInstaller.sh脚本。
此外,远程录制器现在利用Android 10+功能来设置PVRCarbon进行录制(如果可用)。
远程录制器是从远程设备获取录制的最简单方法。大多数情况下,您不需要费心手动安装录制层。
OpenGL SC 支持
我们已经在PVRCarbon中添加了一个OpenGL SC2.0录制库。OpenGL SC是OpenGL安全关键。它旨在帮助开发在汽车等市场对安全至关重要的应用。
OpenGL SC录制可以在OpenGL ES 3.1+和OpenGL SC 2.0驱动上播放。
裁剪录制
最后,我们在PVRCarbon中增加了更多选项来导出和裁剪您的OpenGL ES录制。保存录制时,您可以选择帧范围。这允许您从录制中任意裁剪不需要的帧。此功能也可用于 CLI 工具 PVRCarbonTrim,该工具与 PVRCarbon打包在一起。也可以将录制导出为可调试的C++工程。
PVRTune
PVRTune是世界领先的硬件分析和应用程序分析工具。它将硬件数据源整理成数百个在GUI中显示的可切换计数器中。这些计数器可以确切地知道应用程序如何占用GPU的不同部分,并可以更轻松地查看性能瓶颈来自哪里。
PVRTune使用远程录制器自动部署到远程设备。这意味着您可以轻松地通过网络或 USB 收集性能数据,而无需在设备上手动安装任何软件。
那么 ,PVRTune 有什么新功能呢?
SSH 日志小部件
我们添加了一个新的 SSH 日志小部件。此小部件接收来自PVRPerfServer的命令行输出和正在录制的应用程序。PVRPerfServer是一个实用程序,在使用 PVRTune远程录制器时自动部署。它收集性能数据并将其发送到PVRTune。当尝试识别PVRTune录制或应用程序本身的问题时,SSH日志是非常有用的调试工具。
PVRTune完整版——计数器和计数器组编辑更新
PVRTune完整版是PVRTune功能齐全的版本。此版本提供更详细的GPU信息访问,允许您执行深入的性能分析。PVRTune完整版仅在NDA签署后提供,因此如果您想申请一份拷贝,请联系开发人员技术团队(devtech@imgtec.com) 。
我们在这个版本花费了很多时间,改善计数器和计数器组编辑接口。我们添加了将计数器组导出或导入为 CSV 文件的选项。这允许您在PVRTune之外存储和编辑计数器组,使团队中的许多人更容易拥有完全相同的计数器。现在,您还可以在计数器组中编辑CPU计数器。
此外,我们还通过重新建模 GUI改进了【创建新计数器】对话框的可用性。可用的计数器现在显示在树视图中,这可以更轻松地准确找到要查找的计数器,尤其是在使用筛选框时。
这些更改将使您更易于创建自己的自定义计数器和计数器组。
PowerVR SDK
PowerVR SDK包含我们的图形开发框架和一组应用程序示例。框架是用于常见 3D 图形任务和跨平台部署的模块集合。这意味着您可以专注于编写图形应用程序本身,而不是重写模板代码。SDK示例向您展示了如何使用各种技术和工具共同制作真正高性能的图形应用程序。当前提供了80 多个示例,这些示例使用多个 API实现,如OpenGL ES、Vulkan、OpenCL 等。
在新版本中,我们使用Vulkan创建了一个新的矩阵乘法示例。该示例是一个Vulkan应用程序,它可以在不打开窗口的情况下从命令行启动。该示例使用几种不同的方法运行 SGEMM(单精度通用矩阵乘法)基准。
这些不同的方法探讨了以下不同因素对性能的影响:
- 不同的缓冲区内存布局
- 以不同的方式利用本地内存
- 每个线程和矢量处理不同数量的任务
与大多数SDK示例一样,此示例广泛使用 SDK 框架。
PowerVR SDK可通过我们的 GitHub代码库获取,如果您兴趣,欢迎访问:https://github.com/powervr-graphics/Native_SDK
结语
还有更多的工具和SDK漏洞修复和改进,无法一一在这里列出, 但如果您感兴趣,请查看详细文档说明。
PowerVR工具和 SDK 2020 Release 2现已可开放下载。
原文链接:https://www.imaginationtech.com/blog/powervr-sdk-and-tools-2020-release-...
声明:本文为原创文章,转载需注明作者、出处及原文链接。