目前支持XLua、SLua、ToLua,Unity的版本在5.6(包括5.6)以上
- 打开Release目录,或者下载Release的zip
- Window用户直接点击运行相应Lua插件的exe即可,mac运行对应的shell文件进行配置
- 把
Release\LuaProfiler
文件夹Copy到Assets 非Plugin、Editor目录下。 - 如果配置炸了,就手动改注释
// 把LuaHookSetup.cs 文件头的宏替换为
#define XLUA
#define TOLUA
#define SLUA
点击 "Window->Lua Profiler Window"在弹出窗口上打开 Deep Profiler,正常进入游戏即可看到profiler数据
也是默认模式,如果关闭点击Profiler窗口下的Record按钮即可开启。在这个模式下将保存每次Profiler采样的历史记录,并且会将出现帧率下降、或者超大GC申请的Sample进行截屏保存,需要截屏的GC的阈值你可以在 capture gc 后面的输入框中进行配置,并且为了避免大分辨率下截屏,会自动把屏幕分辨率设置为480*270。如果不想截屏,可以点击NeedRecord开关进行关闭
当你在编辑器下暂停或者关闭游戏的时候你可以拖动 start 以及end的进度条进行历史记录查阅,sample列表中将显示start到 end 的累计采样值。要单独观察某一个sample的消耗可以把start和 end 设置为相同值。
- 拉动滑条可以快速大概的调整sample帧
- 点击 '<' 、 '>' 两个按钮一次只增加或减少1帧
- 点击 '<<' 、 '>>' 两个按钮可以快速移动到效率出了问题的某些帧
- Save跟Load 两个按钮可以保存和载入Sample的采样信息
设置完IDE和Lua代码工程路径后,双击Profiler上的记录可以直接用IDE打开对应的代码位置,目前支持的IDE有VSCode、SubLime、IDEA、Clion、Rider
正常模式一般是针对本身就很卡的游戏,如果不想被Record模式的截屏影响
效率。你就可以选择这种模式,直接点击Record按钮关闭Record就可以了,几乎不会对游戏本身造成什么效率问题,你可以先在这个模式下把一些GC或者时间占用超长的明显函数进行优化后,在使用Record模式去细化发现一些隐藏比较深的效率问题。比如点击某些按钮、开启模型UI、摇杆、某些服务器协议的开启等等.....
有什么BUG可以联系加群:882425563
Misaka Mikoto 的MonoHooker
xebecnan 的 UniLua
Jay
ZhangDi
以及LuaProfiler群中的所有群成员