Coroutines协程流程控制工具
Unity 里做 AI 逻辑?用协程是个挺聪明的选择。Coroutines.zip
是我最近用下来觉得比较顺手的一套工具包,专门搞异步、流程控制那些事,重点是它把协程这事儿封装得蛮舒服。
协程的控制流程在Coroutines.ControlFlow.cs
里定义得清清楚楚,像条件判断、循环逻辑这些都能搞定,写 AI 的时候管用,比如敌人巡逻->发现目标->攻击,就能直接拆成几个阶段。
流程节点集中在Coroutines.Nodes.cs
里,每个节点代表一步操作,拼一拼就能形成类似状态机的东西,写起来比较直观,维护也省心。
调试也不愁,Coroutines.Diagnostics.cs
带日志和状态追踪功能,出了问题一查就知道是哪一步卡住了。性能也能看,挺贴心的。
有个实用的点是协程支持序列化,看Coroutines.Serialization.cs
就知道。也就是说,你可以把当前协程状态保存下来,比如玩家中途退出,下一次还能继续跑。
Coroutines.Instructions.cs
里是扩展过的协程指令,比如自定义延迟、条件等待之类的,比 Unity 原生的灵活多了,写脚本逻辑方便不少。
还有一些Utils
类和第三方库,比如Newtonsoft.Json.dll
用来 JSON,Mono.Cecil.dll
估计是为了做代码注入或者反射用的。功能层面已经齐全了。
如果你也在 Unity 里写 AI 逻辑,想让协程跑得更丝滑点,这包还蛮值得一试的。下载后直接导入,配合你自己的任务系统用用看,说不定会有新思路。
Coroutines.zip
预估大小:13个文件
Coroutines.Utils.cs
4KB
Mono.Cecil.Mdb.dll
39KB
Coroutines.Diagnostics.cs
18KB
Newtonsoft.Json.pdb
1.22MB
Coroutines.Instructions.cs
5KB
Coroutines.Nodes.cs
30KB
Mono.Cecil.dll.mdb
152KB
Newtonsoft.Json.dll
433KB
Coroutines.Serialization.cs
6KB
Newtonsoft.Json.dll.mdb
179KB
783.69KB
文件大小:
评论区