← 返回博客
引擎是如何搭起来的:PixiJS、Next.js 与 60 FPS
2025-02-20 · AI Ant Civilization Team
一篇短小的工程笔记:引擎如何分层,CPU 与 GPU 各负责什么,为什么最终选定了 PixiJS + Next.js。
引擎分为三层:信息素网格(typed array)、智能体层(工蚁、兵蚁、捕食者)、渲染层(PixiJS)。三层在一个 60 FPS 的步进中协同工作。
信息素用扁平 typed array 存储,每个格子保存两个值:回巢与觅食。更新采用指数衰减 + 卷积式扩散。整张网格小到可以装进 L2 缓存。
智能体使用“steering”行为:寻找附近最强信息素、躲避墙体、依据是否携食切换角色。没有中央大脑,蚁群由此涌现。
渲染层是纯 PixiJS:避免使用 canvas 文本与重 CSS 叠加,全部走精灵图。即便屏幕上跑着上百只智能体,GPU 也毫无压力。