一个深度集成的 C++ 协程插件,适用于 Unreal Engine 4 和 5。
UE5Coro 为 Unreal Engine 5 提供了 C++20 协程 支持,重点放在游戏逻辑、便利性以及与引擎的无缝集成上。其中内置了对隐式 UFUNCTION 的轻松编写支持。将隐式 UFUNCTION 的返回类型更改为协程,您便可免费获得所有的 FPendingLatentAction 套用代码,同时还能在开箱即用的情况下获得 BP 安全的多线程支持:
即使是协程的返回类型也被隐藏在 BP 中,以免干扰设计师:
UObject* HardPtr = co_await AsyncLoadObject(SoftPtr); 这样,您只需要享受优势(以及 FPS)即可。 * 如何将繁重计算分散到多个时间单位中? 在循环中添加 co_await NextTick();,就已经完成了。 有一个时间预算类,可让您直接指定所需的处理时间,并让协程动态调度自己。 * 说到动态调度,限流可以这么简单:
在函数中添加 co_await MoveToTask();,之后的所有内容都将在 UE::Tasks 系统中在一个工作线程中运行。
暂无开放 Issues,或尚未同步最近议题。