使用Adreno Profiler分析android游戏
2016-04-17 19:38
429 查看
有时候我们需要对自己的游戏或者别人的游戏进行分析,比如我们需要了解一个引擎的大体渲染的流程,这个时候我们可以借助一些工具,在PC上我们可以使用Microsoft PIX、Intel GPA、Nvidia的Nsight和PerfHud来截取一帧的数据来分析。由于最近转到移动平台上,有时候也需要分析游戏,这个时候我们可以借助不同显卡厂商的工具来分析。此处,我们以高通的Adreno Profiler为例来分析一个程序。首先,你需要有一个使用高能解决方案的手机:比如小米、锤子等。
有几个需要注意的地方:
确保USB驱动已经正确的安装。
确保手机开启了USB调试功能。
确保程序清单(manifest)中android.permission.INTERNET和com.qti.permission.PROFILER被开启。
假设你已经安装了Adreno Profiler,打开后选择Connect,会出现以下界面:
假设你设置正确的话,会出现上面所示的界面:
这时打开你的程序,点击refresh,那么可以调试的程序就在上面显示,一定要确保com.qti.permission.PROFILER在manifest中打开,如果没打开会显示found a device but no adreno profiler-enabled app。
接下来点击Connect。
连接成功后,我们需要分析OpenGL ES,点击Scrubber GL。
这个时候可以点击Capture Frame来截取我们的数据。等待截取完成,这个时候我们就可以分析渲染流程了。
关于如何在manifest中添加许可项,读者可自行搜索,因为我最近在研究UE4,下面以UE4 4.10为例来说明怎么添加。
打开EditàProject Settings。
选择PlatformsàAndroid,在下图所示的Extra Permissions下面添加新的权限,然后打包即可。
后记:使用Adreno Profiler分析程序操作还是比较简单的,我在坚果手机和nubia的一个手机上都成功连接,但是红米手机,就是提示found a device but no adreno profiler-enabled app,因为其它机器可以正确连接,所以就没深入去追究原因,不知道你是否也遇到过类似的问题。
有几个需要注意的地方:
确保USB驱动已经正确的安装。
确保手机开启了USB调试功能。
确保程序清单(manifest)中android.permission.INTERNET和com.qti.permission.PROFILER被开启。
假设你已经安装了Adreno Profiler,打开后选择Connect,会出现以下界面:
假设你设置正确的话,会出现上面所示的界面:
这时打开你的程序,点击refresh,那么可以调试的程序就在上面显示,一定要确保com.qti.permission.PROFILER在manifest中打开,如果没打开会显示found a device but no adreno profiler-enabled app。
接下来点击Connect。
连接成功后,我们需要分析OpenGL ES,点击Scrubber GL。
这个时候可以点击Capture Frame来截取我们的数据。等待截取完成,这个时候我们就可以分析渲染流程了。
关于如何在manifest中添加许可项,读者可自行搜索,因为我最近在研究UE4,下面以UE4 4.10为例来说明怎么添加。
打开EditàProject Settings。
选择PlatformsàAndroid,在下图所示的Extra Permissions下面添加新的权限,然后打包即可。
后记:使用Adreno Profiler分析程序操作还是比较简单的,我在坚果手机和nubia的一个手机上都成功连接,但是红米手机,就是提示found a device but no adreno profiler-enabled app,因为其它机器可以正确连接,所以就没深入去追究原因,不知道你是否也遇到过类似的问题。
相关文章推荐
- Android课程---关于数据存储的学习(2)
- Android SQLiteOpenHelper使用
- Android课程---添加黑名单的练习2(课堂讲解)
- Xamarin.Android再体验之简单的登录Demo
- android6.0中permission授予机制的改变
- OpenCV在Android平台上的应用
- Android横竖屏切换继续播放视频
- Android 6.0运行时权限小结
- Android TextView 实现文字大小不同和文字颜色不同
- Android-Sqlite使用手册
- Android中的对话框
- Android WiFi调式工具WiFi ADB的使用
- Android_ListView
- Android Studio创建数据库表的一个问题
- Android中的soundpool小结
- (4.5.4)Android测试TestCase单元(Unit test)测试和instrumentationCase单元测试
- EditText点击事件——弹出单选框
- android 发送GET请求 服务端接收乱码的问题
- 认清Android框架 MVC,MVP和MVVM
- Android Task任务栈