古法编程 在约 200 行 C++ 中实现面向游戏开发的无栈协程网页链接“C++20 协程有着非常优雅的语法¹,但它们对于游戏开发来说却非常不适合²。
如果你曾尝试用它们来编写 Boss 脚本、对话或 AI 行为——任何你希望代码能顺序执行但暂停几帧的场景——你可能会遇到我曾经遇到的同样问题:不透明的句柄、堆分配³、隐藏的编译器降级,以及——对游戏来说最致命的——无法将暂停的协程序列化到磁盘。
在本文中,我将介绍 sfex::Coroutine:一个约 200 行、无栈、基于宏的协程库,核心构建在经典的 switch + __LINE__ 技巧的变体之上。就像我之前讨论过的 sfex::Profiler 一样,这些协程的设计目标是简单且轻量。”AI创造营
