



小游戏市场中,以《抓大鹅》为代表的 3D 堆叠消除类产品,凭借拟真的物理反馈和极高的变现效率,成为了超休闲赛道的佼佼者。
由小呆猫工作室出品的《抓什么3D消消乐》为我们提供了该品类游戏的核心玩法模版。
本文将从物理系统、渲染方案、工程架构三个维度,深度拆解这款即将于五一期间,上架晓衡微店的《抓什么3D消消乐》源码模版实现细节。
Part.01
模块化与资源管理
《抓什么3D消消乐》项目基于 Cocos Creator 3.8.3 开发,采用 TypeScript 编写,工程结构遵循高度解耦的原则。





核心框架 (TotoGameFrame)
承载了游戏的主循环逻辑,包括 Systerm(控制系统)、UI(面板管理)及 Frame(底层框架)。
资源热更逻辑 (Bundle 分包)
将音效、特效、3D 道具模型(KitchenProps)及关卡配置(Levels)通过 Asset Bundle 形式管理,便于运行时动态加载,优化首包加载速度。
通用 UI 库 (UIFrame)
内置了如 ToastSysterm.ts 等高复用组件,开发者可轻松迁移至其他项目。
Part.02
3D物理交互与消除算法
区别于传统的 2D 棋盘消除,本作的核心难点在于 3D 空间的物理感官与槽位逻辑的无缝衔接。





3D拾取与射线检测
项目通过物理系统 PhysicsSystem.instance.raycastClosest 发射射线,将用户的屏幕触控点精准转化为 3D 空间操作。





通过配置不同的 mask,有效区分了 3D 物品层(1<<0)与 UI 槽位检测(1<<4)。
物理状态的平滑切换
当物品被选中时,系统会调用 flyToPoint()。此时,物品的 RigidBody(刚体) 类型会从掉落态(DYNAMIC)即时修改为运动态(KINEMATIC),并移除重力影响的分组,配合 tween 动画实现流畅的“飞行入槽”效果。
自定义 Shader 与渲染优化
为了解决 3D 物体在杂乱堆叠中的视觉交互反馈,项目实现了自定义描边 Shader。
实现原理:利用法线(Normal)与摄像头方向向量(View Vector)实现描边高亮。




通过 Shader 逻辑处理,解决了“3D 描边被其他模型遮挡”的层级问题,确保选中提示始终显示在最高层级。
物理引擎驱动的“打乱”算法
不同于生硬的坐标随机重排,项目在场景底部设计了一个隐形的“搅拌容器”。





调用打乱技能时,通过旋转容器产生 eulerAngles 的剧烈波动,利用物理引擎天然产生的托举力和离心力完成 3D 模型的物理洗牌,视觉表现更自然。




Part.03
跨平台 SDK 接入
作为一款面向商业化的源码,其底层封装了完善的流量变现模块。





PlatformManager 调度中心:支持针对微信小游戏、抖音小游戏及 Android/iOS 原生端的自动适配。
全量广告位支持:内建了激励视频(用于道具/复活)、插屏、开屏及 Banner 广告的触发流水线。
Part.04
CSV与无尽模式
项目通过 CSV 配置文件高效产出关卡配置,并能控制每关出现的物体种类与密度。
打开 assets/TotoGameFrame/Bundle/Levels/ 目录下的 CSV 文件。





在 pCount 列填写数字,系数 1 代表产出 3 个物品(凑成一组)。若要增加关卡,新建 level[N].csv 并在表格内按物品名称分配数量即可。
上图中,我是使用AI编辑器自然语言批量生成 10 个关卡前三关极致简单,后面难。





当关卡索引超出 CSV 配置范围时,系统会自动切入无尽随机模式。
通过 addRandomPropToScene 逻辑持续动态补充物品,极大降低了长线运营的内容产出成本。
Part.05
五一上架预告
这款《抓什么3D消消乐》完整源码,将于五一期间正式上架晓衡微店商城,届时将有特价优惠。




技术亮点:Cocos 3.8.3 环境、物理引擎深度应用、微信抖音SDK支持。
授权范围:支持商业使用,包含全部 3D 模型资产(基于开源商业授权库)、音效及 UI 资源。
技术支持:下单用户将获得作者的部分技术支持,以及微信小游戏代码授权协助。
如果您是寻求高效变现方案的项目,或是对 3D 物理表现感兴趣的开发者,欢迎关注后续动态。
另外,开发者还有更多游戏即将在五一节登陆,敬请期待!




晓衡的愿景是助力1000+开发者,独立挣钱10W+,1个亿的小目标我们一同前行!


我是晓衡专注于游戏开发技术与个人感悟分享,如果公众号上的文章对你有所帮助或启发,欢迎点赞分享给更多朋友!




1725

被折叠的 条评论
为什么被折叠?



