您现在的位置是:首页 >其他 >Unity Nsight Graphcis 使用网站首页其他
Unity Nsight Graphcis 使用
前言
在渲染Profile中,大家经常喜欢使用Renderdoc软件, 之前我的一篇博客也介绍Renderdoc Profile渲染的流程
RenderDoc Debug UE4 Shader_ue4 debug shader_带帯大师兄的博客-CSDN博客

Renderdoc适合查看Draw哪一步出差了,导致效果不符合理想,又或者是非常粗糙估算某次Drawcall的消耗时间。但是Renderdoc有个非常严重的缺点,无法具体查看某次DrawCall具体瓶颈, 比如具体消耗瓶颈是在VertexShader, 还是PixelShader,消耗瓶颈在Shader的哪一步计算,这些Renderdoc是无法查看的。因此, 为了进一步查看这些更具体的性能数据, 得进一步使用其他工具来Profile, 我比较推荐Windows版本的NSight Graphcis
NSight Graphcis
下载地址: Download NVIDIA Nsight Graphics | NVIDIA Developer
使用文档: User Guide :: Nsight Graphics Documentation
显卡要求: RTX系列显卡(Shader Profile需要RTX显卡)
Unity引擎版本: 2022.2.1f1
NSight Graphcis版本: 2022.1.1
Demo:Unity实现GPU Cull渲染_带帯大师兄的博客-CSDN博客
RenderAPI环境: Directx12
FrameDebugger



运行Demo后截帧

Event 和 CurretTareget
Draw事件查看器,和Renderdoc的Event使用差不多

Range Profier


Debug一个渲染阶段(各种Draw事件)的各项性能指标,特别是Pipeline Overview清晰的给出VS/PS/GS/CS等阶段占比消耗。
ShaderProfiler
记得使用RTX显卡,并且在Directx12环境,unity shader加入一下宏, Unity比较推荐2022之后的国际版本。
#pragma enable_d3d11_debug_symbols
#pragma use_dxc
shader profile入口很多,可以从RangeProfiler或者Eevent进入

在转dxc下才能看到Shader具体执行指令的性能HotSpots
目前碰上一个坑:SurfaceShader在 use_dxc宏下存在异常,无法查看HotSpots和HLSL层面的代码







U8W/U8W-Mini使用与常见问题解决
QT多线程的5种用法,通过使用线程解决UI主界面的耗时操作代码,防止界面卡死。...
stm32使用HAL库配置串口中断收发数据(保姆级教程)
分享几个国内免费的ChatGPT镜像网址(亲测有效)
Allegro16.6差分等长设置及走线总结