当前课程知识点:移动图形概论 > 第八章 PowerVR 工具简介 > 8.2 SDK 中的实用工具介绍 > SDK 中的实用工具介绍
各位同学 大家好
今天给大家介绍一下PowerVR的开发工具
今天给大家介绍一下PowerVR的开发工具
今天的主要内容会对PowerVR SDK中提供的
七个开发工具进行简单介绍
在Windows系统下
安装好PowerVR全家桶后
会在开始菜单的Imagination Technologies
目录下找到全部的程序
首先介绍一下PVRGeoPOD
这个工具用来输出POD格式的模型文件
它通过插件的方式支持多种3D建模软件
如Autodesk 3DSMax Maya Blender
它的图形界面还可以用来进行模型格式转换
支持的格式有Autodesk的FBX和Khronos的COLLADA
PVRShaman是Pod文件查看器
可以用这个工具查看示例代码中的多个模型文件
PVRShaman还包含几个内置的模型
也可以用来测试代码
同时它还内置着色器程序编辑器
支持PFX格式的着色器程序编写
并可以实时查看渲染的效果
PVRVFrame我们在前面已经介绍过
通过复制它的三个dll文件到windows系统中
就可以在windows平台仿真运行OpenGLES的程序
OpenGLES的程序运行之后
还可以在PVRVFrame中看到程序的相关信息
例如这个截图中可以看到
HelloPVR程序运行时所使用的上下文支持情况
PVRShaderEditor是一个独立的着色器程序编辑器
它具有语法高亮功能
可以实时对代码进行编译
实时显示编译的结果和可能的错误提示
可以对每行代码的执行周期进行预测
同时给出总运行时间的预测
如果需要
还可以提供对不同PowerVR GPU的反汇编结果
对程序进行进行深入的分析
PVRTexTool是一个纹理文件编辑器
扩展名为PVR的纹理格式是公开的标准
可以被SDK很好的支持
我们前面程序中使用的纹理文件都是以pvr为扩展名
PVRTexTool可以以三种不同的方式显示纹理
既可以显示单个图片
也可以作为立方体纹理显示
还可以把纹理平铺显示
pvr格式支持对纹理文件进行高效压缩
可以用PVRTexTool制作不同压缩等级的纹理文件
PowerVR硬件可以处理pvr文件的PVRTC压缩纹理
所有PowerVR架构都支持这些纹理压缩格式
而不会损失太多图像质量
可以将RGB和RGBA格式压缩为4位每像素和2位每像素
这可将带宽减小4到16倍
从而降低了系统带宽需求
也降低了功耗
这里有一个示例
第一张图像是未经压缩的原始32位图像
第二张图像是经过压缩的4位图像
第三个图像是经过压缩的2位图像
如果纹理数据中的颜色不是特别丰富
4位图像不会产生明显的质量损失
2位图像有时候质量会差一些
PVRTune是适用于
PowerVR系列图形加速器的性能分析工具
它使用驱动程序级计数器和硬件寄存器
来提供有关PowerVR GPU上
运行的应用程序性能的实时数据
因此
必须先在具有PowerVR GPU的设备上运行应用程序
然后才能进行分析
如果您正在基于PowerVR GPU进行开发
则可以按照PowerVR SDK中的说明使用PVRTune
首先要在要调试的设备上安装PVRPerfServer软件
然后在主机上运行PVRTune
通过设置网络地址和设备进行连接
连接成功后就可以在图形界面上
实时看到CPU和GPU的负载情况
可以获得实时更新的软件调用的统计信息
帮助开发者进行性能分析
以提高程序的运行效率
提高性能的解决方案是
仅提交必要的几何形状并尽可能的减小带宽
图形渲染代码的编写方式也会对性能产生很大影响
进而导致功耗增加等问题
PVRCarbon是一个兼具记录和分析功能的实用程序
它能够捕捉运行中的OpenGL ES应用程序
所执行的所有API调用
并记录数据以供日后分析
PVRCarbon可以与PowerVR SDK OpenGL ES仿真器一起使用
这样一来
无需在实际设备上
运行OpenGL ES代码即可对其进行分析
通过自动的静态分析
可以定位程序运行瓶颈
在查看程序的捕获结果的时候
可以在图形界面中看到全部API的调用情况
每个API的输入和输出信息
都可以很清晰的显示出来
还可以将屏幕显示的结果通过分析API重现出来
通过调节当前的显示帧数
还可以对特定的显示位置进行分析
这对于初学者来说可以作为很好的调试程序手段
而不必在程序中增加调试代码
需要注意的是
这里显示的API都是底层的OpenGL ES调用
PVR SDK的函数不会显示在这里
因为这些API是在驱动程序层次中进行捕获的
好 今天的课程就到这里
谢谢
-1.1 课程基本情况介绍
--课程基本情况介绍
-1.2 GPU 相关基础知识
-1.3 OpenGL ES 技术发展历史
-1.4 PowerVR SDK 安装和使用
-第一章测试
-2.1 OpenGL ES 基本概念
-2.2 编写第一个图形程序
-2.3 主要 API 介绍
-第二章测试
-3.1 矢量和矩阵知识基础
-3.2 旋转与位移变换
--旋转与位移变换
-3.3 OpenGL ES 变换基础
-第三章测试
-4.1 着色器编程语言介绍
-4.2 着色器编程实例
--着色器编程实例
-第四章测试
-5.1 颜色的基本概念
--颜色的基本概念
-5.2 纹理素材的使用
--纹理素材的使用
-5.3 立方体纹理
--立方体纹理
-第五章测试
-6.1 光照的基本概念
--光照的基本概念
-6.2 光源模型
--光源模型
-6.3 使用着色器渲染颜色
-6.4 反射与折射
--反射与折射
-第六章测试
-7.1 基于物理渲染的基本概念
-7.2 基于图像的照明
--基于图像的照明
-7.3 PBR 的实现
--PBR 的实现
-第七章测试
-8.1 Vulkan 介绍
-8.2 SDK 中的实用工具介绍
-综合测试




