U
Unity
星辰学院
首页
课程表
章节导览
第 1 课
返回主站
首页
/
第 16 章 · 性能优化
/
第 278 课
LESSON 278 · 性能优化
性能测试与基准
性能测试完成。下一课做资源与内存审计。
⏱ 约 13 分钟
📊 难度:
入门
🗂 第 16 章 · 性能优化
📍 第 278 / 300 课
课程进度
278 / 300
🎯
本节学习目标
建立帧率统计
建立测试场景
制定性能指标
🚀
课程导读
“优化有没有效果”要用数据说话。本课建立可复用的性能测试体系。
◆
帧率统计工具
自己“数帧”。
【FPS 统计脚本】
public class FPSDisplay : MonoBehaviour {
private float fps; private float timer; private int frames;
void Update() {
timer += Time.deltaTime; frames++;
if (timer >= 0.5f) {
fps = frames / timer;
timer = 0; frames = 0;
}
}
void OnGUI() { GUI.Label(new Rect(10, 10, 200, 30), "FPS: " + fps.ToString("F1")); }
}
【说明】OnGUI 直接画屏上(测试用,发布删)。
【平均/最低】记录一段时间的最低帧率(卡顿指标):
minFps = Mathf.Min(minFps, fps);
【目标】平均 60 + 最低 > 45(稳定)。
【真机】真机运行时看数值最真实。
【完成】“数帧器”上线!
【注意】OnGUI 有开销,只测试用。
💡
帧率统计 = 每秒算一次 + OnGUI 显示 + 记录最低帧。
◆
测试场景与指标
“压力测试场”。
【压力测试场景】专门做一个“性能测试”场景:
大量敌人、大量特效、大量物理物同时活跃。
【测试动作】固定操作流程(跑一圈、打一波怪)确保可复现。
【指标】
平均 FPS、最低 FPS、Draw Call、GC Alloc、内存峰值。
【基线】优化前记录基线 → 每次优化后对比。
【多平台】PC 与真机各测一套。
【报告】整理成表格:版本/场景/平台/指标。
【回归】每次改版本跑一遍回归(防止优化破坏优化)。
【完成】“体检中心”建成!
【推荐】性能测试是团队流程(个人也受益)。
【注意】测试要“场景一致、操作一致”才可比。
✅
基准体系 = 压力场景 + 固定操作 + 指标记录 + 回归对比。四件套。
⚠
常见错误与排查
⛔
错误:
每次测的帧率不一样?
原因:
场景/操作/平台不一致
解决:
固定场景与操作流程;同一设备;关闭后台程序。
★
动手练习
课后小任务(做出来才算真的学会)
写 FPS 统计脚本
建压力测试场景
记录基线并定指标
✓
本节小结
性能测试完成。下一课做资源与内存审计。
标记为已完成
完成打卡后,主站会实时更新你的学习进度 🎯
← 上一课
多场景管理与场景切换
下一课 →
资源与内存审计
↑