Skip to content

qigedashen/LuaProfiler

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lua的性能分析器 For Unity


部署安装

目前支持XLua、SLua、ToLua,Unity的版本在5.6(包括5.6)以上

  • 首先把LuaProfiler文件夹Copy到Assets 非Plugin、Editor目录下。
  • 打开"LuaProfiler/HookSetup/LuaHookSetup.cs"
  • 在10~12行开启对应的Lua版本宏即可
  • 或者到对应版本的Lua里面把LuaProfiler文件夹导入到你的工程目录中
//#define XLUA
//#define TOLUA
//#define SLUA

使用教程

开启

点击 "Window->Lua Profiler Window"在弹出窗口上打开 Deep Profiler,正常进入游戏即可看到profiler数据

效果如下


Record模式

    也是默认模式,如果关闭点击Profiler窗口下的Record按钮即可开启。在这个模式下将保存每次Profiler采样的历史记录,并且会将出现帧率下降、或者超大GC申请的Sample进行截屏保存,需要截屏的GC的阈值你可以在 capture gc 后面的输入框中进行配置,并且为了避免大分辨率下截屏,会自动把屏幕分辨率设置为480*270。如果不想截屏,可以点击NeedRecord开关进行关闭
    当你在编辑器下暂停或者关闭游戏的时候你可以拖动 start 以及end的进度条进行历史记录查阅,sample列表中将显示startend 的累计采样值。要单独观察某一个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

关键问题解决者

Xavier

关键测试的成员

Jay
ZhangDi
以及LuaProfiler群中的所有群成员

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 86.4%
  • Lua 13.5%
  • Other 0.1%