全程 AIGC 游戏创作,2小时开发微信小游戏!(完整ChatGPT调教流程) |
您所在的位置:网站首页 › 微信小程序游戏有折扣吗 › 全程 AIGC 游戏创作,2小时开发微信小游戏!(完整ChatGPT调教流程) |
给 AI 打工,2小时开发一款3D小游戏可行么?
最近,科技发展是日新月异...... 如果说 Stable Diffusion 和 Mid Journey 只是卷死了美术,我们还在庆幸研发不能被替代。 那么 3 月份出来的 GPT4 就让我感到危机了! 那么很多同学就说,大不了我当 UI 崽,让 GPT4 给我写 Shader 么?对此,我同时持怀疑和焦虑。 本文从实践出发从程序、Shader、美术、到音乐均由 AIGC,二喵全程负责当 UI 崽,来探索 AI 的上限和下限,缓解焦虑。 写在前面 老习惯,先做思维导图,确定要做哪些内容?游戏玩法是 AI 熟悉的贪吃蛇,这次要升级到 3D 贪吃蛇并加入新玩法和复杂地形。 为啥要先写思维导图呢,因为功能点比较多,中间改来改去怕影响GPT4的上下文。同时功能也会尽量拆开,避免相互干扰。 01 代码功能开发 第一次沟通,GPT4 的 API 还停留在 Cocos 3.3 版本,这次是使用 3.7.2 最新版本开发,先粘贴第一个需求,居然没有报错! 然后运行就翻车了! 初始化直接报错,我发现直接空指针报错,检查后发现是 _moveDirection 蛇的方向向量为空(猜猜为什么跑不起来?) 经过沟通后,小 G 很快修复了问题。 运行一切正常。 然而加入水果的逻辑,第3次运行,发现蛇的方向错乱,作为1个老UI崽,很快意识到是蛇头的坐标被污染了,这时候已经开始打退堂鼓了,不会每次都需要我修改吧? 于是我开始 CPU 小 G,在接下来的 5 个功能点上,一切正常。 小 G 和我的配合也渐入佳境 大概花了 50 分钟把全部的游戏逻辑写完了一切正常。 02 小结如下 在这次对话中,我们一起完成了一个基本的 3D 贪吃蛇游戏。您提出了一些问题和需求,我对代码进行了修改和补充。以下是您提出的修改和补充要求: 添加使用键盘 WASD 控制蛇移动的逻辑。 修正 _moveDirection 没有初始值的问题。 添加吃到水果后蛇身增长的逻辑,水果在地图上随机出现。 修改 _checkCollision 方法中不应使用 this._snakeHead.position.subtract 的问题。 添加游戏边界逻辑,超过边界游戏会重新开始。 在地图上添加一个坤坤,碰到坤坤后游戏会重新开始。 碰到水果后,坤坤的位置会随机改变。 吃到水果后有 30% 几率生成一个大西瓜,吃到大西瓜会增加 3 个长度。 吃到水果后有 10% 几率生成一个响雷果实,吃到响雷果实会增加速度 20% 并增长 2 个长度。 要求提供 randomRange 方法。 添加地图上每隔 10-20s 会随机生成一个缓慢果实,吃到缓慢果实会减速 20% 并减少 1 节身体。 优化生成特殊水果的逻辑,判断之前的节点是否存在,如果存在则重新设置位置,而不是重新生成。 添加上下左右四个按钮,按钮按下可以控制蛇的移动。 在电脑上运行时隐藏按钮,在手机上运行时显示按钮。 使用 touch down 的方式控制按钮。 添加一个 label 计分板,显示蛇身子的长度,每次增加和减少时会变化计分板。 添加一个 暂停 按钮,每次点击可以切换暂停和继续。 重新输出完整的代码,添加中英文注释。 添加摄像机跟随蛇头移动的脚本。 修改摄像机脚本中获取蛇头节点的问题。 添加摄像机阻尼,让摄像机跟随更平滑。 下面到了比较难地形的部分,这里新开了一个对话。 这里需要小 G 在 terrain 上随机生成植物,跑起来是没问题的,但的生成的位置明显偏了一半的位置 不断提醒小G 快速修复 再拿这个写好的方法和之前对话沟通,给蛇头和物体生成逻辑也加上,一切顺利! 程序部分就这样有惊无险的完成了。 03 Shader 环节 接下来到了Shader了,心理是一阵炸裂,因为3.3 的API比较老,先从最简单的 Blinn-Phong 开始。 VS 部分写了一半我就炸了 这个信息太老了 反复修改先把 VS 解决 FS 部分先忽略 API,这个光照模型没考虑摄像机的观察位置。 然后各种向量计算问题,各种 API 和 Global 变量问题 经过了1个小时的折腾(中间换了2次对话,太曲折了,目前还是建议大家参考为主)...... 总算在 3.7.2 跑起来了 接下来是写 1 个草的风吹效果,也是很常见的效果,还好做了心理准备,这里 GPT4 上来就把 Chunk 漏了。 为了面子,小 G 快速去 Github 抄了1个。 跑起来又出了问题!! 这里其实也不怪小 G,用的是 2.x 的 API。 我们改成在透视的矩阵变换之前添加效果,这时候就可以看到风吹草动的效果了。 最后设置 ok 开启 instancing 保证性能! 04 音乐 https://mubert.com/ 音乐就不需要AIGC添加脚本了,直接使用引擎的AudioSource 组件, 音乐使用的是mubert 关键词 fun happy snake 05 天空盒 AI天空盒:https://skybox.blockadelabs.com/ 也是 prompts + blockadelabs 生成,关键词 Fantasy, Forest, Lake 06 图片 AI绘图:https://www.midjourney.com/ prompts:snake eating an apple, cyberpunk , in the space, hyper-realistic, surreal, fantasy, cinematic, extremly detail, 3D, manipulation, VFX, vivid background, cool --q 2 --v 5 - Icons 写在最后 目前GPT 的数据库比较老,在 Shader 上遇到了很多问题,然后无论如何,用2个小时时间,搞定一个小游戏还是很香。 最关键的是不用怎么动脑,CPU AI输出就好了。 总结: 每次Prompts 需要要控制在2-3个,方便回馈和修复,比如一次把需求全部沟通完,如果报错,可能自己和AI都比较难定位; 需要的内容版本信息和语言信息要明确,比如版本是 Cocos 3.3 (GTP4 2021 知道的最新的版本), 避免使用更老的API;语言需要要求是TS (不然可能抄到JS版本);Shader 要求尽量参考 Webgl,语法是 Yaml; 发现问题要尽可能详细的反馈,AI 会学习这个问题; 尽量在一个对话中沟通一个大的需求,保持上下文连贯; 调整好心态,是 AI 在干活,你是老板,咖啡 Youtube 配鸭脖,发现 AI 有问题,CPU 就好了,他改不好继续改,没事儿看看他打字; 复盘,这个很重要让AI每次输出完复盘下,也观察下这次 Prompts 能否更精简,那些沟通是不必要的。 比如有时候过度沟通,AI反而开始摆烂。 调整心态,态度要好一点 ( 调整好态度后,果然注释全了,开始也以为是 Prompts 里加了仔细,结果不尽然,OpenAI 会判断是否对AI带有恶意,过度 CPU 可能会导致对话提前终止)。 最后是游戏体验链接和源码下载地址,欢迎关注作者公众号! H5体验链接: http://learncocos.com/aigcsnake/ 源码下载地址: https://store.cocos.com/app/detail/4775 孙二喵公众号: 往期精彩 ChatGPT之父『山姆·奥特曼』总结的10条创业秘决! GPT-4发布!迄今为止功能最强大AI模型! ChatGPT和MidJourney已经成我小秘书!太爽了 面对AI的兴起,普通人应当如何正确抉择? 春天来了,换一个活法,可助你逆风翻盘! |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |