08
2025
04
20:49:56

1小时用AI开发一款3D小游戏,喂饭级教程

我一直很好奇微信小游戏的《欢乐球球》是怎么实现的,我自己也想动手做一个demo试一下。上次写了一篇思路,网友不满意,觉得太水了没有含量,今天就手把手教会大家怎么开发这样一款游戏。

好了,不废话,现在就开始本期的手把手小游戏开发课,因为比较基础,高手还请绕道。

这次要开发的做一个3D游戏,主题很明确,就是要模仿《欢乐球球》。以前很畏惧做3D的游戏,因为我空间感很差,经过这段时间的磨炼,差不多已经不晕3D了。多了一维计算就丢给AI吧,虽然有时AI有幻觉但是还是可以用。

因为上次说过3D游戏的视觉效果就是要比2D的强,所以几乎不用特意去找素材就可以做一个核心玩法。先把结果发出来给大家看看,是不是视觉效果还不错。

好了,如果你坚持看到这里了,说明你真的想学习开发一款属于自己的游戏。可以给我一个三连,我很需要你的支持鼓励。为了所有人都公平,可以从0基础做到上面的效果,我们还是从环境搭建开始。

第一步:运行环境

做游戏用JavaScript非常方便,无需安装任何运行时软件,你的电脑应该有浏览器,只要有浏览器就能运行游戏,要是没有浏览器,额,那我想问你平时是怎么上网的。。。随便一款浏览器都可以,当然最好别是IE,懂得人都懂。

第二步:编码环境

编码环境我们采用VS code,选择官网,点击下载,根据你的电脑系统点击mac或者Windows,下载好了,安装完成。或者用AI编辑器如cursor,windsurf,trae都没问题

第三步:游戏引擎

熟悉我的朋友,都知道我常用cocos creator,如果你熟悉其他引擎,比如layaair,unity,或者gamemaker,或者godot,都没有关系,毕竟AI这么全能,任何引擎对它来说都是一样的。

点击下载mac或者window版本,安装完成打开软件,注册账号,登录,下载最新引擎编辑器版本,创建项目一个3D项目,这个很关键,别选错成2D了。编辑器版本可以选择最新的,你就可以开始让AI做你的牛马了。

第四步:游戏素材

这次开发只需要一个素材,把小球换成僵尸,僵尸模型哪里来?AI给你做一个。打开https://3d.hunyuan.tencent.com/,登录进去,选择文字游戏道具工作流程。

接下来,你只需要通过文字就可以得到一个3D模型。

比如我说生成一个可爱的僵尸,额,结果给我一个愤怒的僵尸,那我将就着用,你也可以换成其他的,甚至可以把你的自拍照生成一个模型。

得到结果后将模型以obj文件导出。

拖入到游戏编辑器中,备用

第五步:游戏场景搭建

这个时候AI要上场了,再不上场,游戏教程都要做完一半了。由于我是“新手”,那么就开始问AI。

cocos creater 3.8 制作一个类似《欢乐球球》的游戏,3D场景,一根蓝色大圆柱,上面有很多方块组成的台阶,方块有两种颜色,灰色和红色,初始化阶段最顶部的台阶有一个小球,蹦蹦跳跳,摄像机跟随小球。挪动屏幕可以选择方块台阶,小球能够在灰色台阶上跳跃,碰到红色台阶游戏结束,每下一个灰色台阶得1分,帮我制作这个游戏。

我这次的提示语写的非常长,一次性描述了整体的核心玩法逻辑。

接下来按照AI的提示一步一步执行。

  1. 创建3D场景,添加圆柱体作为主结构。

  2. 生成台阶,围绕圆柱体,每一层有多个方块,颜色随机,但顶部初始为灰色。

  3. 添加小球,设置刚体和碰撞体,使其能弹跳。

  4. 实现摄像机跟随小球移动。

  5. 处理玩家输入,旋转圆柱。

  6. 小球跳跃逻辑,比如施加力或调整位置到目标台阶。

  7. 碰撞检测,处理颜色判断,游戏结束和得分。

  8. UI显示得分和游戏结束界面。

可能遇到的问题:

  • 如何动态生成台阶,并确保它们围绕圆柱正确排列。可以使用循环,根据角度放置每个Cube

  • 小球跳跃的物理控制,可能需要调整力或速度,确保它正确落到目标位置。

  • 摄像机平滑跟随,避免抖动。

  • 输入处理,比如触屏滑动转换为旋转角度或目标位置。

考虑的很完善,接下来就一步一步来操作。

1、创建蓝色3D圆柱体

  创建立方体:在层级管理器中右键选择「创建 -> 3D对象 -> Cylinder」。

  设置蓝色材质

  1. 在资源管理器中右键「材质 -> 新建 -> 材质」,重命名为「BlueMat」

2.选中材质,在属性检查器中设置:

将材质拖拽到圆柱体节点的MeshRenderer组件中,这样就得到了一个蓝色的圆柱体。

圆柱有点小,调整一下scale,缩放比例(5.25,100,100),记住3D里面都是以scale熟悉来控制节点的大小,没有长宽高。

Metallic设为0

Albedo颜色调整为蓝色(RGB 102,143,255)

现在柱子很长了。柱子搞完嘞,接下来制作僵尸。

2、添加僵尸

  将僵尸模型拖放到scene中,重命名为

拖进去你发现僵尸看不到,别慌,是位置被圆柱体挡住了,需要把僵尸位置调整一下。

已经出来了,不过方向好像不对。

调整一下摄像头的位置,因为要稍微俯视效果,得让玩家多看点下面的方块。

选择camera,设置position和rotation的属性,数值参考图片上。预览游戏

差不多了,就是僵尸有点小,那么可以放大一点,就不过多介绍。

  3、制作方块台阶

因为台阶是可以多次复用的,所以要用预制体,凡是能够多次复用的物体,都要第一时间想到预制体。

在场景中新建得到一个Box,然后拖拽到assets面板中,获得预制体。

点击预制体,添加碰撞组件,为了处理碰撞使用。

复制一个,制作红色的预制体,新建一个材质,设置为红色,步骤参考上面圆柱体设置材质,是一样的。

因为台阶要整体移动,所以需要把他们放到一个组里面。新建一个容器节点

为了视觉效果,可以先手动搭建基层台阶看看。

假设每一层都有灰色和红色两种,多复制几层出来,然后设置一下每一层的位置和旋转角度。

方块Z方向位置突出一些,这里设置为3.5,红色为-3.5

floor节点Y方向从0开始,每一层,减去8,旋转角度每一层可以随意,为了演示,我这里设置为60,每一层设置的旋转角度都不一样,错开,视觉效果就出来了。

然后记得设置砖块的物理刚体为静态的,不然会掉下去

万事具备了,只缺代码逻辑。

第六步:手指旋转砖块


创建StepsCtrl组件在资源管理器中新建TypeScript脚本「StepsCtrl」,挂载到Steps节点。可以将脚本直接拖拽到属性栏,也可以直接在属性栏添加脚本组件,两种方式自己选。

核心代码实现

绑定touch事件,然后根据滑动距离,转换成旋转角度。

把代码复制到编辑器就可以开始调试。

  1. 点击编辑器顶部「三角形」按钮启动浏览器预览

  2. 手指水平滑动屏幕,如果方块旋转正常就可以了。

  3. 因为这里圆柱体没有特别的纹理,如果有可以一起旋转。

第七步:僵尸蹦蹦跳跳

本游戏玩法的核心来了,那么继续让AI教学。

Ball改为zombie,因为写球是更好让AI理解游戏玩法,你写个僵尸下台阶估计AI一脸懵。AI给的答案有点语法问题,需要调试下。

先给僵尸加上物理组件和物理材质。

简单模拟,给僵尸添加球星碰撞体模型,还要设置碰撞的弹性系数,因为僵尸可以一直弹不会停下来。摩擦全部设置为0,反弹设置为1,反弹系数代码也可以设置。

然后添加控制球的代码,要处理碰撞,碰到红色游戏结束,碰到灰色反弹。AI很友好,落地动画和弹跳动画都帮忙写出来了。

加上代码之前看效果,看上去还凑。

那么接下来的问题就是要处理摄像头,要跟随僵尸一起移动,不然没法玩。

第八步:摄像机跟随

新建一个CamerFollow脚本,跟随节点是僵尸。

因为我们事先已经调整好游戏的摄像头视角,在后续移动过程中,摄像机节点的位置相对僵尸节点的位置保持一致就行。

代码如下:

游戏开始先计算好摄像头和僵尸在Y方向上的位置差值

在每一帧位置计算的时候加上差值,如果移动位置过大,做一个线性插值计算,让摄像头移动动画缓和一点,将脚本绑定到摄像头上。

操作完之后看效果

结果符合预期。

第九步:动态生成砖块

因为之前的方块是我提前摆好,现在需要动态生成无限多的方块。前面几个我们就固定用摆好的,在Y坐标-24之后,我们就动态生成,每间隔8的单位生成一个。然后生成新的同时要回收旧的方块,不然方块多了游戏会卡。

看一下效果

最后还要打磨一下手感,僵尸的速度要加快一点,把节奏感搞起来,加一些音效,震动反馈的效果,粒子动效,游戏结束逻辑。




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://zblog.hqyman.cn/post/10226.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: