学习游戏开发之旅:与ChatGPT的亲密接触

游戏开发可能会很困难,但使用ChatGPT能让它变得更容易吗?我已经尝试过了,结果并不完全令人满意

我使用ChatGPT制作了一个视频游戏。查看我的ENBLE文章中的研究结果!

询问ChatGPT关于制作我第一个游戏的问题. 图片来源:Jon Martindale / DigitalTrends

你有没有曾经有一个伟大的游戏创意,但你不知道从哪里开始?不久之前,我就是那个人。作为一名狂热的程序员和作家,我决定开始一项任务,制作自己的游戏。然而,在这个旅程中,有一个工具我想利用:ChatGPT。以前我曾经用ChatGPT来做一些任务,比如头脑风暴创意或寻找答案,但这次,我想看看它是否能帮我学会如何制作游戏。结果呢?说实话,这是一次充满宝贵经验的冒险之旅。

第一个障碍

作为一名长期游戏迷,并且在年轻时已经涉猎过基础的Flash游戏编程,我脑海中有一些创意着急要变成现实。对我来说,挑战是找出从哪里开始。我应该制作什么样的游戏?我应该使用哪个游戏引擎?我到底该如何开始制作游戏?这些问题在我脑海中回旋,说实话,我感到有点不知所措。我以前简单接触过Unity,但它让我有些害怕和不确定。所以,我向我老朋友ChatGPT寻求指导。

在ChatGPT的帮助下,我们探索了不同的游戏引擎,在分享我的游戏概念后,它提供了一些建议。最终,它推荐创建一个2D游戏,并建议考虑使用Godot或Game Maker Studio等引擎。于是,我进行了一些外部研究,并选定了Game Maker Studio。这似乎是最直接的选择。ChatGPT鼓励着我做出决定,我们一起着手开始规划我的项目。

现在怎么办?

我已经选择了我的游戏引擎,但问题仍然存在:我怎么才能真正制作一个游戏?ChatGPT的建议是学习这个引擎,这很合理。但我应该从哪里开始呢?有各种各样的方法,吸引我注意的是跟随教程。这似乎是一个合乎逻辑的起点,所以我在YouTube上找到了一个Game Maker教程,投入了几个小时的时间。最后,我创建了一个小行星克隆版本的游戏,这肯定会让我年幼的自己感到欢乐,分散了我完成学校作业的注意力。

然而,我很快意识到教程只是涉及了引擎的表面。它让我了解了基础知识,但也让我对更多知识渴望。大多数有经验的开发者建议在尝试一个原创项目之前,创建多个教程游戏,以提高对引擎的熟练度。但是我禁不住思考,“我只是一个完全的初学者吗?我没有专家在我身边吗?” 是的,我有ChatGPT,我的可靠伙伴,它可以回答我的问题,甚至可以为我生成代码片段。所以,我思索着跳过教程阶段直接进行自己的游戏的可能性。我不知道这个决定会导致一系列的成功和挫折。

一切顺利,直到出现问题

在ChatGPT的支持和指导下,我取得了迅速的进步。几个小时内,我就有了一个游戏的原型,我感到非常高兴。兴奋地,我转向ChatGPT,问它如何扩展游戏,使其更大、更长、更有趣。那时,我发现了一个关键问题:我构建的原型是定制的,缺乏灵活性,无法在不大量改写的情况下进行扩展。

没有关系,对吧?原型本来就不完美;这就是我们迭代的原因。为了克服这个障碍,我决定创建一个CustomGPT——一个针对我游戏特定情况进行调整的版本,其中包括了游戏对象、脚本和代码片段的知识。有了这种新的方法,ChatGPT和我重新开始,这次利用数组和结构这样的高级技术——封装、模块化的代码,调用脚本,并动态管理不必要的实例。

但说实话,我并没有完全掌握数组和结构的复杂性。在一个疲惫的夜晚,我迫切希望在休息片刻之前完成一部分工作,我采取了一种捷径——我要求ChatGPT为我编写代码。令我高兴的是,它完美地运行了。受到这个成功的鼓舞,我继续依赖ChatGPT寻求更多的代码片段,让它为变量命名,甚至为代码添加注释。

不幸的是,一开始只是偶尔借助ChatGPT的辅助工具很快就变成了一种习惯。我发现自己在使用变量名和代码建议时并没有完全理解它们。一切都还好,直到我遇到一个重大障碍——一个对象不按预期的方式运行。ChatGPT提出了一些可能的修复方法,但都没有奏效。我感到非常沮丧,花了几个小时试图解决这个问题,但最终只是在原地打转,一无所获。

最终,出于绝望,我将每个游戏对象和脚本的全部事件代码都复制到ChatGPT中,恳求它找出问题所在。它确实找到了问题,但是提出的修复方案都没有解决。感到被打败的我意识到我已经走到了尽头。为了追求快速开发,我牺牲了深入的理解,结果却走进了歧途。我简单地缺乏有效的故障排除技能,甚至无法回滚到我的游戏的稳定版本。

问题

回顾我在游戏制作导师ChatGPT上的经历,以及在其他领域使用ChatGPT的可能性,我做出了一个深刻的认识:ChatGPT并不拥有真正的知识。它可以获取信息并生成看似知识渊博的回答,但它缺乏真正的理解。当我向ChatGPT寻求帮助时,它帮助我沿着我选择的路径前进,却没有向我启示可能更优越的替代方案。

此外,ChatGPT并不熟悉最新的Game Maker Studio手册或最新的最佳实践。因此,它有时会提出过时的方法,这与引擎的警告不符。无论是我定制的GPT还是更专业的编码向导Grimoire都缺乏直觉。它们无法预测我未来的挑战或者想象我的项目范围的变化。这些基于人工智能的工具无法取代人类教师或个人专业知识。

解决方案

尽管在这个过程中遇到了挫折,但我并没有放弃我的游戏制作之旅。事实上,我采用了一个新方法,将ChatGPT的优势与个人成长结合起来。现在,我会认真命名变量和脚本,并撰写有意义的注释。这样,当不可避免地出现问题时,我对游戏的工作原理有更深入的理解,能够制定解决方案。

如果我遇到一个陌生的概念或问题,我会向ChatGPT寻求一般性的解释,并凭借这些信息对我的游戏进行个性化的修改。诚然,进展可能会更慢,但通过真正的学习所获得的稳定性和信心是无价的。当障碍出现时,我可以战胜它们,因为我真正正在学习制作游戏的技能,而不是依靠ChatGPT来替我完成,我只是被动地观察。

我在开发社区的朋友们对我的困境感到有趣。毕竟,最初我依赖先进的人工智能技术来指导我,结果意识到我和其他人一样学习编码——慢慢地,犯了很多错误。然而,我一开始就应该咨询Grimoire、手册或其他可靠的资源。每当我想学习新东西时,我都会求助于全面的文档。当我需要第二个意见时,ChatGPT可以迅速查看我的代码并提供有价值的见解。此外,我还实施了GitHub,以确保有一个安全网,可以在需要时轻松回溯,恢复我项目的秩序和理智。

别误会了——ChatGPT仍然是一个令人难以置信的工具,毫无疑问它会进一步改进。它是一个全天候的专家导师,以较低的成本和可定制的互动方式提供智慧。即使是由ChatGPT生成的简单任务清单,赞美我的努力并列出成就,也既令人鼓舞又实用。

然而,ChatGPT并不是我设想中的终极解决方案。我将继续制作我的游戏,并在适当的时候利用ChatGPT的帮助。也许在一年或两年后,你会发现我的同事们不情愿地帮助我推广我完成的游戏。只有时间会告诉我们。

问答:处理其他主题

问:除了Godot和Game Maker Studio,你还推荐其他适合初学者的游戏引擎吗?

答:虽然Godot和Game Maker Studio都是初学者的绝佳选择,但还有其他值得考虑的游戏引擎。比如Unity就是另一个受欢迎的选择,它提供了丰富的资源、活跃的社区和多样化的功能。Unreal Engine是另一个可靠的选择,尤其适合创建更具视觉效果和沉浸式的游戏。最终,最适合你的游戏引擎将取决于你的特定需求、偏好和你想要创建的游戏类型。

问:除了跟随教程,有哪些其他有效的学习游戏开发的方法?

A: 教程确实是一个很好的起点,但学习游戏开发还有其他途径。以下是一些建议:
– 在线课程:像Udemy、Coursera和LinkedIn Learning这样的平台提供了由行业专家教授的全面游戏开发课程。
– 图书:有很多适合初学者的游戏开发图书。一些热门标题包括Jonathan Weinberger撰写的《Unity游戏开发终极指南》和Robert Nystrom撰写的《游戏编程模式》。
– 游戏比赛:参加像Ludum Dare或Global Game Jam这样的游戏比赛可以提供实践经验,并鼓励与其他开发人员合作。
– 社区论坛:与Reddit的r/gamedev或您选择的游戏引擎的官方论坛互动可以提供有价值的见解、支持和与志同道合的人的联系。

记住,实践和毅力是关键。学习游戏开发是一个需要奉献和不断探索的持续旅程。

总结

在ChatGPT的帮助下,我踏上了游戏开发的旅程,经历了高低起伏。我了解到在依赖人工智能工具的同时,投资时间进行个人成长的重要性。ChatGPT的局限性提醒我们,真正的专业知识只能通过经验、学习和愿意犯错来获得。

因此,如果您考虑涉足游戏开发或其他领域,请拥抱您可用的资源,同时努力获取更深入的知识和理解。让每一行代码成为您自己的杰作,不要在寻求来自人类导师、可靠文档和支持性社区的帮助时退缩。通过决心和持续学习,您可以将游戏创意转化为现实。


参考文献:

  1. 免费解锁ChatGPT:一个快速窍门
  2. SpaceX错误解雇了八名激进员工,美国劳工委员会称
  3. 不要错过《如龙外传》中有趣的ChatGPT副本故事
  4. Newegg希望您信任ChatGPT的产品评论
  5. ChatGPT网站流量首次下降
  6. OpenAI推出定制AI聊天机器人商店
  7. 新加坡的LocoFy推出一键设计转代码工具

与我互动吧!如果您在学习新技能时有任何难忘的经历,或对使用人工智能工具有任何想法,请随时在下面的评论中分享。如果您觉得本文有帮助或有趣,请在社交媒体上分享!🎮✨