性能预算面板

From Valve Developer Community
< Zh
Revision as of 22:38, 27 June 2025 by WoShiGeNiCheng (talk | contribs) (Created page with "{{LanguageBar|Showbudget panel|title=性能预算面板}} '''性能预算面板'''用于测量每帧生成所需时间,并按引擎系统分解显示。这是找出地图或模组中性能瓶颈的绝佳工具。 {{note|需要开启作弊模式才能显示ShowBudget。在{{L|console|控制台}}输入<code>sv_cheats 1</code>。}} {{tip|使用<code>budget_panel_height</code>调整面板高度,初始显示可能较拥挤。}} {{warning|ShowBudget无法准确统计多...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
English (en)中文 (zh)Translate (Translate)

性能预算面板用于测量每帧生成所需时间,并按引擎系统分解显示。这是找出地图或模组中性能瓶颈的绝佳工具。

Note.png注意:需要开启作弊模式才能显示ShowBudget。在控制台(en)输入sv_cheats 1
Tip.png提示:使用budget_panel_height调整面板高度,初始显示可能较拥挤。
Warning.png警告:ShowBudget无法准确统计多线程性能。如需精确测量,请先设置mat_queue_mode 0,测试完成后恢复为-1。

基础使用

《传送门2》中的性能预算面板

控制台(en)输入:

  • 开启:+showbudget
  • 关闭:-showbudget
  • 绑定按键:bind <按键名> +showbudget

面板右侧显示FPS计数器和各系统耗时(毫秒/帧),数值越大对帧率影响越显著。

全屏模式

为准确测量渲染性能,必须:

  • 使用全屏模式(非窗口化)
  • 关闭后台应用程序
  • 避免同时运行Hammer编辑器(en)

渐进式指标

游戏逻辑、物理和音效的耗时会随帧率下降而增加。即使它们显示为最长条,也可能并非主因。建议禁用其他高耗功能进行对比测试。

性能分类解析

未统计耗时
常见原因:
  • 后台程序(杀毒软件、Hammer(en)等)
  • fps_max限制导致的引擎等待
世界渲染
优化方案:
调试命令:
  • r_drawworld 0/1/2
  • mat_wireframe 0/1/2/3
位移渲染
优化方案:
调试命令:
  • r_drawdisp 0/1
游戏逻辑
优化方案:
  • 减少实体数量
  • 监控think_limit峰值
调试命令:
  • think_limit
NPC AI
优化方案:
  • 减少活跃NPC数量
  • 优化导航网格
调试命令:
  • ai_disable
  • ai_show_connect
物理系统
优化方案:
调试命令:
  • physics_budget
  • physics_report_active
静态道具渲染
优化方案:
调试命令:
  • r_drawstaticprops 0/1
  • perfui