《Cocos 游戏开发入门》1.3 第一个可跑循环:requestAnimationFrame 与固定步长
本节写出 mini2d 的第一个主循环:从 requestAnimationFrame 的可变 dt,到固定步长累加器与 maxSubSteps 防死亡螺旋,再用 FakeTime 假时钟在 Node 里把整条循环复现成单测,最后对照 Cocos Creator 3.8 的 director 主循环与 Component.update。
tag
本节写出 mini2d 的第一个主循环:从 requestAnimationFrame 的可变 dt,到固定步长累加器与 maxSubSteps 防死亡螺旋,再用 FakeTime 假时钟在 Node 里把整条循环复现成单测,最后对照 Cocos Creator 3.8 的 director 主循环与 Component.update。
游戏世界是离散采样的:一帧就是一次快照。本节把「一帧」的心智模型讲透——时间为什么是离散的、dt 从哪来、坐标系必须回答原点在哪与 y 轴朝哪、单位是什么这三个问题,并给出屏幕坐标(左上、y 向下)与世界坐标(中心、y 向上)的换算与一个可单测的往返实验。
本节把《方块冲刺》的环境搭起来:锁定 Node 26.5 + TypeScript 7 + vitest 5 + vite 8 + Playwright 1.59,讲清三层可运行性口径,给出仓库骨架与 package.json,重点说明 tsconfig 如何通过 types 接入 @cocos/creator-types@3.8.8,让 Cocos 脚本也过 tsc --noEmit 检查。
《Cocos 游戏开发入门》全 61 篇,以从零手写的 2D 运行时 mini2d 为主线,从帧与坐标系、Canvas2D 渲染、场景图与批处理起步,经时间步长、输入手感、组件模型、碰撞检测、动画缓动、音频、资源加载、UI 布局、存档状态机、游戏 AI 与关卡、数值系统、调试工具、测试与打包,最后把同一款游戏《方块冲刺》与 Cocos Creator 3.8 的两套实现并排对照。示例在本机实跑,本页给出全书分章目录。
深入理解 Lua 在游戏引擎中的嵌入方式:脚本宿主(Host)架构、引擎对象绑定(userdata 与 LuaBridge/tolua++ 绑定工具)、Cocos 与 Defold 的实现对比、资源管理与热更新流程,以及脚本层性能优化实践。