调试工具对OpenGL函数使用进行性能测试,寻找瓶颈,检查缓冲内存,显示纹理和帧缓冲区附件,这对开发过程中是非常有用的。

RenderDoc

Renderdoc™是一款独立程序,它可以在任何使用Direct3D 11.0 或11.1的Windows应用中捕捉和回放帧,提供工具进行深入分析、图形探察以及API使用的详细检查,这些功能让开发人员在他们的程序中 定位错误和问题。

Renderdoc™由Crytek完全从头开发,就是为了满足图形程序员的真实需求,并在其CRYENGINE引擎的各款游戏制作过程中广泛使用和改进优化。计划逐步地增加Renderdoc™功能,并且支持其他平台及API (比如OpenGL)。

窗口介绍

  • Timeline(时间线):能够直观地显示不同阶段(不透明,透明,天空盒,early-z,阴影通道等)所花费的时间。它同时会显示渲染目标的读/写,所以你可以快速查看生成帧的方式是否会产生成本昂贵的解析成本。
  • Event Browser(实践浏览器):列出帧的所有API调用,并且用调试标记标签分开逻辑绘制组。在这里选择绘制会根据情景填充/更新所有其他选项卡(纹理查看器和网格查看器等).RenderDoc tabbed functionality
  • Texture Viewer(纹理查看器):显示所选绘制的输入纹理和输出纹理(RT)。单击单个纹理可以查看其格式/分辨率/可用的MIPS/MSAA级别等。
  • Pipeline State(管道状态):选择任何管道状态以查看绑定资源的所有属性和材质属性(透明度/混合状态和纹理/采样器等)。
  • Mesh Viewer(网格查看器):在本地空间查看输入网格,从而确定正在进行绘制的是哪个绘制。你同时可以看到顶点数目(对于验证LOD系统非常有用),屏幕空间中的后投影视图和顶点属性等。
  • Launch Application(启动应用):选择要运行并附加到RenderDoc host的应用程序。如果你选择的情景是“Local”,则可以在计算机执行应用程序。如果选择的情景是“Remote:Oculus Quest”,你将获得设备可用包的列表。
  • Resource Inspector(资源检查器):显示渲染目标,临时缓冲区,纹理,着色器和网格等所有GPU相关资源的列表。
  • Statistics(统计数据):显示你的绘制次数和GPU内存使用情况等。

RenderDoc 对Android 设备联调

前期准备工作:下载RenderDoc到电脑上,手机端打开开发模式,开启USB调试,连接电脑的usb选项选择“文件传输”。

1. 设备连接

在电脑端点击RenderDoc窗口的最左下角,选择当前的手机型号;RenderDoc的窗口左下角会显示 Remote server ready,并且在手机屏幕上出现RenderDoc的logo界面,表示连接成功,可以联调。

        

2. 运行

在Launch Application窗口标签中按一下步揍,根据包名选择需要调试的app,并点击Launch 启动(调试的包需要debug)。

    

3. 捕获

成功运行之后,RenderDoc窗口中不多了个设备的标签,名称为:手机型号+ AppName,通过红框中的“Capture Frame(s) Immediately”按钮,立即截取帧,当然也可以延迟截取或者截取多帧,这里只截取一帧。

双击红色方框中的黑色部分(此处显示手机画面),RenderDoc窗口的左边列表就会有渲染信息,并在窗口上部分显示Timeline

4. 分析

  • 在“Statistics”选项卡以查看当前的渲染绘制调用信息;在这里可以看出Draw Call、API Call 的调用次数,texture使用数量以及内存占用,GPU的内存占用等很直观的数据信息
  • 可视化绘制/时间:接下来,打开“Texture Viewer”选项卡,打开“Overlay”菜单中的“Highlight Draw Call”选项,单击“Gather Timings (clock)”按钮,最后在“Output”纹理部分中选择“Render Target”。这样做会为我提供每个绘制调用的相对定时,并帮助我找出花费时间最长的绘制调用。我可以在“Event Browser”中单击任何调用,并在“Render Target”查看器中突出显示。
  • 根据DrawCall等统计数据,以及具有最高定时的绘制,并尝试确定原因。着色器过于复杂吗?输入资源属性设置不正确吗?我的渲染顺序异常吗?
  • 更多分析请参考官方文档 https://renderdoc.org/docs/index.html

OpenGL——调试软件RenderDoc的使用相关推荐

  1. OpenGL 调试Debugging

    OpenGL调试Debugging 调试Debugging简介 glGetError() 调试输出 GLFW中的调试输出 过滤调试输出 回溯调试错误源 调试着色器输出 OpenGL GLSL参考编译器 ...

  2. 触摸屏与计算机通讯视频在线,MCGS触摸屏与电脑调试软件modbus通讯

    MCGS触摸屏与电脑调试软件modbus通讯 一. 硬件准备工作 1.有一个带串口的电脑或者USB转串口也可以: 2.有一个MCGS触摸屏TPC7062KX或者带RS232协议的MCGS触摸屏: 3. ...

  3. 对未标记为可安全执行的脚本_Script Debugger for Mac(脚本调试软件)

    你是否需要一款可以轻松编译AppleScript的工具吗?来试试Script Debugger for Mac吧!Script Debugger Mac版是一款运行在mac平台的调试软件.Script ...

  4. 变频器怎么设置_如何利用串口调试软件与变频器通信?

     西门子博途的全套视频教程下载!  西门子S7-1500内部培训PPT下载! 每一个做工控的都必须要会利用串口调试软件来和我们的外围设备来做通讯测试.今天我们就来学习怎么用串口调试软件控制台达的这款变 ...

  5. d06调试详细说明_D06电脑板调试软件使用说明_20100706

    嘉德锐科电脑板调试软件使用说明 目录 一.软件主界面 ......................................................................... ...

  6. ollydbg,ring3级别的调试软件

    ollydbg,ring3级别的调试软件.基本上,调试自己的程序因为有源码,一般用vc,破解别人的程序用ollydbg,而调试驱动可用softice,这个原则虽不绝对,但在大多数情况下是行得通的.以下 ...

  7. 蒂森MC2_B系统调试软件 蒂森MC2_B系统调试软件

    蒂森MC2_B系统调试软件 蒂森MC2_B系统调试软件 id=602184177255&

  8. windows串口调试linux工具,推荐一款好用的串口调试软件PuTTY

    原标题:推荐一款好用的串口调试软件PuTTY PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连接软件.较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平 ...

  9. 串口调试软件,功能强大,侦测,拦截,逆向分析串口通汛协议

    串口调试软件,功能强大,侦测,拦截,逆向分析串口通汛协议,是RS232 /422/485串行端口的专业工貝软件编号:436653364752811GUANXFENG

最新文章

  1. JVM常用的参数配置
  2. mfc如何将一个数组中的字节数据用串口发送出去_RS232串口多机通信
  3. 【数字逻辑入门】计算机如何存储1位二进制数
  4. nginx事件 -- 第六篇 stale event
  5. java内存管理(适合初学者)
  6. 如何使用Mobile_Detect来判断访问网站的设备:安卓,平板,电脑
  7. 【python爬虫实战】【天天基金网】还在用余额宝存钱?5分钟教你学会筛选优质货币基金
  8. 添加镜头光晕的正确方法
  9. opencv教程(基于python)----关于滑条
  10. X280 工业4g路由器
  11. 计算机组装防呆,电脑内存如果没有防呆口反插有什么后果?
  12. linux安装jdk及配置
  13. NR RLC Protocol General and Procedure
  14. Chrome每次打開都要打開123.sogou.com
  15. JAVA重复图片_〔批处理〕处理重复图片
  16. 【小5聊】Chrome谷歌浏览器下载任何东西都提示 - 失败 - 下载错误的解决方法
  17. 医疗机械公司网站网页
  18. 小黄人这步棋,vivo怎么下?
  19. 事理图谱-下一代知识图谱
  20. 依赖Api的exclude行为失效

热门文章

  1. 小米id锁状态查询_Mysql中的三类锁,你知道吗?
  2. E2E 端到端测试学习 - E2E 介绍、Cypress 案例基本使用
  3. 今天告诉你音频剪切的方法有哪些
  4. Python实现最短路问题常见求解算法1——Label Correcting Algorithm(deque)
  5. 自研!东鸽用 Go 语言写了一个能够自动解析新闻网页的算法
  6. Network Dissection量化网络的可解释性(interpretability)
  7. 移动端点击拨打电话功能
  8. Cty的Linux学习笔记(十)
  9. BeautifulSoup4:抓取腾讯社招页面的招聘信息
  10. xtuoj 1426 骰子 Dice(纯暴力,大脑按摩,究极优化)(bushi