黑群晖做php网站,建网站推广淘宝店,网络编程就是做网站么,WordPress 处理表单Godot 4.1 因为我在游戏中发现#xff0c;越运行游戏变得越来越卡#xff0c;当你使用 Node 节点中的 print_orphan_nodes() 方法打印信息的时候#xff0c;会出现如下的孤儿节点信息
孤儿节点信息是以 节点实例ID - Stray Node: 节点名称(Type: 节点类型) 作为格式输出越运行游戏变得越来越卡当你使用 Node 节点中的 print_orphan_nodes() 方法打印信息的时候会出现如下的孤儿节点信息
孤儿节点信息是以 节点实例ID - Stray Node: 节点名称(Type: 节点类型) 作为格式输出可以多运行几次查看是否节点实例 ID 是否是相同的通常不是随机性很大的一般大概率是相同的
确定了有哪些常见或固定的节点实例ID记录下来使用 var obj instance_from_id(节点实例ID) 进行获取记录孤儿节点然后进行打印信息
prints(obj, obj.owner, obj.get_script())比如我得到了一个固定的节点实例ID然后我通过一下方式进行获取输出这个节点、场景、脚本信息来定位确定是在哪个地方出现的问题 var obj instance_from_id(141431936683)if obj:prints(obj, obj.owner, obj.get_script())if obj.get_script():print(obj.get_script().resource_path)这样排查下来就好找到具体的出现的位置了 后面我又去查看分析器中的性能波动的位置游戏开始后打开调试器里的分析器的开始按钮下图左上角点过之后变成“停止”按钮。勾选 Frame Time 查看时间耗费比较多的帧根据这个帧波动的时间来分析。
我发现游戏中开始变卡一看分析器果然有强烈波动如下图所示
其中有些位置的耗费时间很高比如我这里下面的 ScriptFunctions 里一个叫 update_fog 方法耗费挺多性能所以我在这里入手进行逐个解决