UPL4-3——Debug 的性能消耗

Debug 相关 API 带来的性能消耗

Unity 中 Debug 公共类中提供了日志打印的相关API,比如:

  • Debug.Log
  • Debug.LogError
  • Debug.LogWarning

等等

他们可以用于在 Unity 的控制台中输出打印信息,帮助我们进行项目调试,但是这些API会带来额外的性能开销
特别是在最终的发布版本中,尽量都不要再使用 Debug 相关API,避免给我们的最终项目带来额外的开销,影响项目性能表现

如何更好的使用 Debug 相关API

我们可以对 Debug​ 进行二次封装
可以让我们更加方便的开关 Debug 相关API的使用
尽量不影响我们的开发效率

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using UnityEngine;

public static class DebugUtil
{
/// <summary>
/// 是否是调试模式,可以在发布后修改为false,避免发布后输出Debug信息
/// </summary>
private static bool isDebug = true;

public static void Log(object message)
{
if (!isDebug)
return;
Debug.Log(message);
}

public static void LogWarning(object message)
{
if (!isDebug)
return;
Debug.LogWarning(message);
}

public static void LogError(object message)
{
if (!isDebug)
return;
Debug.LogError(message);
}
}