魔兽世界9.1更新之后很多玩家在开关地图或者交接任务的之后遇到了卡顿掉帧的问题,那么这个问题是什么原因引起的呢?下面一起来看魔兽世界9.1开关地图&交接任务卡顿掉帧解决方法。
魔兽世界9.1开关地图&交接任务卡顿掉帧解决方法
造成卡顿的原因:
C_TaskQuest.GetQuestsForPlayerByMapID
这个api,在9.1,短时间内多次(实际上3~4次)调用就会出现卡顿
简单的测试:
做一个这样的宏:
/run print(C_TaskQuest.GetQuestsForPlayerByMapID(1961))
/run print(C_TaskQuest.GetQuestsForPlayerByMapID(1961))
/run print(C_TaskQuest.GetQuestsForPlayerByMapID(1961))
/run print(C_TaskQuest.GetQuestsForPlayerByMapID(1961))
你去连按试试,就能重现连按M开关地图的卡顿感
这个api是用于返回地图上任务信息的,在开关地图(实际上是地图内容刷新)的时候,瞬间会多次调用的情况(用于获取当前得图的日常/世界任务情况)
所以写段代码,给这个api加个缓冲时间,短时间内只让调用1次
代码:放入任意lua文件内
宏:每次进游戏自行点击一次
简化版的宏:
/run local m,t,r;local pre = C_TaskQuest.GetQuestsForPlayerByMapID;C_TaskQuest.GetQuestsForPlayerByMapID = function(mapID)if m~=mapID or t~=time() then m=mapID t=time()r = pre(m)end return r end
宏和代码稍微有点区别,效果大概是一样的
wa:第一次导入需要小退或者/rl
WA记事本《《