AI生成cocos-creator打砖块游戏-跑通第1关(CodeBuddy)

引言:接上一篇,代码有了,还要有游戏资源,我用AI自动创建预制体的时候不能用,不知道是什么问题,有知道的小伙伴分享一下,相信随着软件的迭代,这个问题会解决。看懂这一篇还是要有一点creator使用经验的,以及代码的阅读能力,没有的话可以试试让AI帮你分析一下每个文件的作用会好理解很多。我这边看一下代码大概知道是什么逻辑以及要生成什么样的预制体,以后AI完善了,让它根据代码生成对应的预制体,应该不是问题。就不多解释creator的一些操作了,详细文档可以看官网

一. 创建砖块,板和球

1.绑定LevelManager.ts相关的资源

找到LevelManager.ts文件,至于为什么会第一时间看这个文件,就需要有一定的代码阅读能力,或者你让AI帮你注释都写上,就容易理解一些。每个文件的@property(xx)是我们重点关注的点,是要和creator绑定上的,绑定好就会开始执行代码逻辑。

从代码的名字上看,我们需要绑定砖块,砖块容器,球,接球的板,所以我依次创建了3个预制体

图片都是用默认的先临时处理,然后把levelmanager脚本绑定到主场景上,绑定好对应的物体,注意我这里把主场景的默认的光照节点和相机节点删除了,创建了一个Canvas,主要是参考了之前项目的结构,不一定是标准的做法,还把场景的skybox属性的钩取消了,不需要天空盒,模式选2d。在Canvas下面添加自定义脚本,点中编辑右边属性面板最下面有个添加组件按钮,然后选自定义脚本,就把这个脚本绑定上了,场景启动时候会自动执行里面的onLoad函数,执行对应的逻辑代码。

  1. 让挡板和小球动起来

这里涉及到物体引擎的使用,就是球碰到墙壁,挡板,砖块会自动反弹,这里AI已经为我们生成了默认的碰撞后的逻辑代码,主要是onBeginContact里面的逻辑,可以自定义具体逻辑,碰撞后反弹的一些逻辑是物理引擎作的工作,我们不需要写任何代码,只要设置物体的碰撞包围体大小就可以了,主要添加钢体组件和包围体组件,设置一些系数就可以了。我首先添加了3面墙,看了GameManager.ts的代码,有个BottomBoundary节点,这个是用来判断小球是否掉到地面的区间,用来判断是否失败的辅助节点,我也顺便加上了,又在MainScene的Canvas添加GameManager.ts的脚本,绑定相关节点。然后在所有需要碰撞检测的物体里面添加物理组件,点击相关节点在添加组件里面添加RigidBody2D组件(钢体)和Colliders组件(包围体)。如下图:

具体的参数说明可以参考官方文档,我这里主要是把小球设置成动态的DYNAMIC类型,墙设置成STATIC类型,挡板,砖块设置成KINEMATIC类型,重力系数都为0。这里重点留意把挡板和小球的包围体组件里面的Restitution(反弹系数)设置成非0,之前这里没注意,小球碰到墙后不会反弹,Friction(摩擦力)也要非0,挡板移动时碰到小球可以改变小球方向。

加完后效果如下:

然后把小球,挡板,砖块的对应代码也绑定上,对应关系如下

看了一下代码,按空格键开始游戏,我按了一下,小球可以运动了,碰到墙面和挡板后都会反弹,掉到地上重新开始,但是速度太快,我看下代码,AI在声明速度变量时候直接赋值,这样在编辑器上改了速度值也没有效果,我直接放到onLoad初始化了,截图如下

看了代码按空格键开始,A和D左右移动挡板,最基础的逻辑实现了。

  1. 创建砖块

这里AI是用代码创建的砖块,个人还是喜欢在编辑器里面创建,暂时按它的来,我按它的砖块BrickWithHealth.ts的代码的结构给砖块加了血条和血量显示,效果如下:

运行一下,游戏出来了

发现销毁第1个砖块后报错,我让它帮我查看问题,它帮我在销毁的时候先禁用物理引擎,然后延迟销毁

我之前做过打砖块游戏好像没有这个问题,然后第2个砖块销毁又出问题了,我又让它改,自动改好了,但是血条偏高的问题我让它改,它没改出来,我暂时也找不到哪里问题。还有我之前球碰到挡板后用默认的物理引擎功能处理反弹就可以了,它这边要用代码修改球的飞行角度,不修改就垂直运动了,也不知道啥问题,就先这样了,基本的逻辑跑起来了。

总结:这里差不多花了6.5个小时,加上次花了7个多小时,不包括安装软件的时间,差不多一个工作日。没有creator使用经验的感觉不好搞定,最好自己先把官方网站的第1个例子跑通,做再简单一点游戏,比如不需要用物理引擎的游戏,类似那些回合制的不需要碰撞检测的游戏。这里我基本没写代码,有问题AI也能自动帮我修复,但是游戏复杂了,感觉全靠AI解决还是比较困难。有项目经验的还是用自己的框架好,AI辅助,比如这个游戏它的结构是AI用代码创建砖块,没有用编辑器摆放位置更方便,如果自己的框架,就可以按自己的思路灵活实习,全部让AI生成的话,一开始也不可能说的那么明白,把所有的要求都说清楚。

这里打算先暂停开发这个游戏了,还是用自己的成熟的框架,让AI辅助更好。后面有想到更有意思的小游戏,会考虑一边制作,一边更新开发流程,和大家分享。

游戏交QQ流群:1105293963

相关推荐
AI科技星8 小时前
《全域数学》第一部 数术本源 全10卷1-4级完整目录(出版定稿)
人工智能·机器学习·数学建模·数据挖掘·量子计算
俊哥V8 小时前
每日 AI 研究简报 · 2026-04-29
人工智能·ai
AC赳赳老秦8 小时前
项目闭环管理:用 OpenClaw 对接 Jira / 禅道,实现需求 - 任务 - 进度 - 验收全流程自动化
运维·人工智能·python·自动化·devops·jira·openclaw
lilihuigz8 小时前
内部链接SEO优化指南:用Rank Math AI Link Genius自动构建内部链接提升排名
人工智能
PaperData8 小时前
2012-2022年农业产业结构高级化
数据库·人工智能·数据分析·经管
mit6.8248 小时前
rGPT-基于理解的人工智能设计
人工智能
IT观测9 小时前
2026制造业智能工厂方案横向对比与选型建议
大数据·人工智能
繁华落尽,寻一世真情9 小时前
modelscope和Hugging上传模型
人工智能
肖有米XTKF86469 小时前
二二复制裂变小程序系统制度(双轨制公排模式)
人工智能·小程序·软件工程·团队开发
不要绝望总会慢慢变强9 小时前
医学图像2025-2026分割方向文章精选
人工智能·深度学习