GameGPT:使用AI实现游戏开发自动化

news2024/11/14 19:15:33

使用多代理基于AI开发游戏的这种方法果真切实可行吗?如今,从事游戏开发如同走钢丝。游戏行业处于一种怪异的境地:游戏变得越来越酷,越来越有开创性,但同时也变得越来越让人头疼:更大的团队、更长的工作时间以及巨额预算。

如今,从事游戏开发如同走钢丝。游戏行业处于一种怪异的境地:游戏变得越来越酷,越来越有开创性,但同时也变得越来越让人头疼:更大的团队、更长的工作时间以及巨额预算。相信我,我知道从事这个行当有多难:我和好友Jim花了两年多时间来打磨自己的太空海战游戏。

那么,有什么解决方法吗?AI能助我们一臂之力吗?来自AutoGame、X-Institute和USC的一些聪明人一直在研究这个问题。他们想出了一种非常有趣的工具:一种名为GameGPT的AI框架,旨在处理游戏开发方面的一些繁重工作。

如果你像我一样执迷于游戏制作,肯定会驻足倾听。我们将阐述这个提议的GameGPT如何运作,看看它是否真的名副其实,并讨论这对游戏开发界的所有人来说意味着什么。

游戏开发日益复杂

首先,不妨仔细看一看为什么游戏开发变得如此资源密集型。当代AAA游戏拥有庞大的代码库,含有牵涉多种编程语言的数百万行代码。对数百人的团队而言,平均开发周期为3年至5年。有些游戏的成本更是超过1亿美元,《荒野大镖客2:救赎》的成本就超过5亿美元。

这种复杂性源自图形、物理、人工智能、开放世界和在线连接等方面越来越高的要求。手工设计游戏玩法复杂的宏大世界需要庞大的团队和努力。

然而,随着成本和时间激增,延误和超支的风险也成倍增加。这给开发人员带来了越来越大的压力,并导致了行业危机和职场倦怠。AI能帮上忙吗?

AI如何改变游戏开发工作流程?

这时候GameGPT有了用武之地。提议该工具的研究人员发现了AI有机会使游戏制作流程的大部分环节实现自动化。GameGPT旨在展示AI不仅有望帮助设计师,还有望实际接手处理核心的开发任务。

我要补充一点,有很多名为“GameGPT”的项目,请务必查看这个项目的官方论文。

按照设想,GameGPT是一种结合多个AI代理的协作框架。每个代理都有各自的专长,比如规划、编码或测试等。它们协同运行,将游戏理念转化为最终成品。不妨更详细地看一下这种提议的框架。

深入探究GameGPT架构

GameGPT旨在利用相互协作的专门的AI代理,使游戏开发实现自动化。可以看下研究人员是如何建立这个框架的:

1. 首先,研究人员确定游戏开发项目中的关键角色和里程碑,这包括游戏规划、任务分类、编码、测试和审查等步骤。

2. 接下来,他们为每个角色分配AI代理。代理使用像GPT-3这样的大语言模型,可以熟练地生成文本。

3. 每个代理都使用游戏数据集和来自游戏开发人员的反馈,针对其特定角色加以微调。比如说,规划代理使用游戏设计文件进行训练,以提高对游戏计划的理解。

4. 代理只处理过程的一小部分。比如说,编码代理只将任务转换成代码,它并不设计任务本身。这使得角色对AI而言比较简单。

5. 代理既可以访问以前对话的私密内容,也可以访问所有代理都可以看见的共享讨论历史记录。这让它们能够合作。

6. 添加了审查代理,严谨分析来自规划代理、编码代理和测试代理的输出。这有助于发现任何错误或限制。

7. 开发人员可以在必要时借助该框架提供交互式反馈,以进一步优化代理输出。

8. 角色确立后,代理就可以按顺序工作,使开发阶段实现自动化。规划人员创建设计文档,编码人员实现代码,测试人员验证代码,审查人员则在每个阶段提供监督。

9. 至于更具创造性的设计步骤,开发人员仍然决定总体愿景。AI旨在使更易于预测的执行和生产方面实现自动化。

这种专门的狭窄AI系统协作的多代理方法使GameGPT能够以循序渐进的方式,使游戏开发工作流程的大部分环节实现自动化。研究人员希望,通过化解复杂性,AI可以有效地处理创意过程的特定部分。

关于自动化游戏开发和GameGPT的几点思考

GameGPT是一个值得关注的概念,它有望使用多个专门代理来简化游戏开发。这种方法可能比依赖单一的通用模型更有效。通过自动化处理重复任务,开发人员可以专注于真正需要人类创造力的方面。

不过坦率地说,让我极其失望的是,虽然这篇论文提出了GameGPT框架,并详细描述了其组件,但没有包括任何量化评估或实验结果来证明其性能。我们怎么知道这个想法到底好不好?它当然不算新奇,之前已有人提议在其他环境中使用具有特定角色的多个代理。

此外,游戏开发中全面自动化的理念也引发了关于原创性和创新的复杂问题。在规划一款新游戏时,游戏开发人员常常将独特的创造性要素视为至关重要的部分。AI目前在构思这种突破性的想法方面不尽人意,特别是由于它难以将紧张和冲突概念化,而这对创新至关重要。

在现阶段,我认为GameGPT主要是一种学术探索。我认为其总体思路大致正确,它让我们得以领略AI如何彻底改变最具活力、最有挑战性的创意领域之一。未来很可能是人类创造力和AI产生协同效应,我根本不知道这方面我们能走得多远。如果没有明确的结果部分和可量化的信息,我们就不是很清楚在游戏工作室是否值得投入来建立这种多代理环境。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1152828.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JVS-BI数字大屏设计器:一站式解决方案

数字大屏介绍 数字大屏是当下数据展示、业务监控、指挥调度常见的业务表达形态,常有可视化的图表、效果装饰、事件操作等技术组成酷炫的效果展示。 配置入口 进入JVS-BI(bi.bctools.cn),进入大屏页面,如下图所示 ①…

少儿编程 2023年9月中国电子学会图形化编程等级考试Scratch编程四级真题解析(选择题)

2023年9月scratch编程等级考试四级真题 选择题(共25题,每题2分,共50分) 1、角色为一个紫色圆圈,运行程序后,舞台上的图案是 A、 B、 C、 D、 答案:A

springboot集成swagger3以及美化调试

实现效果如下&#xff1a; http://localhost:9999/doc.html#/ http://localhost:9999/swagger-ui/index.html#/ 代码开始&#xff1a; 一 引入pom <!-- swagger接口文档 --> <dependency><groupId>io.springfox</groupId><artifactId>springf…

Day 4 登录页及路由 (二) -- Vue状态管理

状态管理 之前的实现中&#xff0c;判断登录状态用了伪实现&#xff0c;实际当中&#xff0c;应该是以缓存中的数据为依据来进行的。这就涉及到了应用程序中的状态管理。在Vue中&#xff0c;状态管理之前是Vuex&#xff0c;现在则是推荐使用Pinia&#xff0c;在脚手架项目创建…

【年终特惠】全流程HEC-RAS 1D/2D水动力与水环境模拟技术案例实践及拓展应用

水动力与水环境模型的数值模拟是实现水资源规划、环境影响分析、防洪规划以及未来气候变化下预测和分析的主要手段。然而&#xff0c;一方面水动力和水环境模型的使用非常复杂&#xff0c;理论繁复&#xff1b;另一方面&#xff0c;免费的水动力和水环境软件往往缺少重要功能&a…

什么是神经网络,它的原理是啥?(2)

参考&#xff1a;https://www.youtube.com/watch?vmlk0rddP3L4&listPLuhqtP7jdD8CftMk831qdE8BlIteSaNzD 视频3&#xff1a;什么是激活函数&#xff1f;为什么我们需要激活函数&#xff1f;它的类型有哪些&#xff1f; 为什么需要激活函数&#xff1f;如果没有激活函数&…

无品牌国产PLC模块调试说明

地址30001对应的aiw9 30002对应aiw10 30003 aiw11 30004 aiw12 模块接线及拨码全部向下&#xff0c;对应的DeviceID为15地址 使用串口线链接的时候a要接b0 b接a0 要反着接才能有数据

LeetCode|动态规划|1035. 不相交的线 、53. 最大子数组和

目录 一、1035. 不相交的线 1.题目描述 2.解题思路 3.代码实现 二、53. 最大子数组和 1.题目描述 2.解题思路 3.代码实现&#xff08;动态规划解法&#xff09; 一、1035. 不相交的线 1.题目描述 在两条独立的水平线上按给定的顺序写下 nums1 和 nums2 中的整数。 现…

学习Linux/GNU/C++/C过程中遇到的问题

学习Linux/GNU/C/C过程中遇到的问题 1.源函数调用&#xff1a;2.linux静态库使用&#xff1a;3.vscode创建c程序调用onnxruntime:问题1&#xff1a;找不到头文件或者未定义函数问题2:error while loading shared libraries: libonnxruntime.so.1.16.1: cannot open shared obje…

HQChart使用教程97-K线X轴滚动条

HQChart使用教程97-K线X轴滚动条 效果图创建步骤1. 创建滚动条div2. 初始化滚动条实例3. 配置滚动条属性4. 创建滚动条5. K线图和滚动条绑定6. 滚动条显示位置 完整示例HQChart代码地址 效果图 示例地址&#xff1a;https://jones2000.github.io/HQChart/webhqchart.demo/sampl…

Python武器库开发-高级特性篇(十)

高级特性篇(十) 多进程 多进程就是指通过应用程序利用计算机的多核资源达到同时执行多个任务的目的&#xff0c;以此来提升程序的执行效率 import os from multiprocessing import Processdef hello(name):#获取当前进程#os.getpid()print(process {}.format(os.getpid()))p…

内衣洗衣机和手洗哪个干净?好用的内衣洗衣机测评

最近一段时间&#xff0c;关于内衣到底是机洗好&#xff0c;还是手洗好这个话题&#xff0c;有很多人都在讨论&#xff0c;坚决的手洗党觉得应该用手来清洗&#xff0c;机洗与其它衣物混合使用&#xff0c;会产生交叉感染&#xff0c;而且随着使用时间的推移&#xff0c;会变得…

【ChatGLM2-6B】从0到1部署GPU版本

准备机器资源 显卡: 包含NVIDIA显卡的机器&#xff0c;如果是阿里云服务器可以选择ecs.gn6i-c4g1.xlarge规格硬盘: 大约50G左右操作系统: CentOS 7.9 64位CPU内存: 4C16G 更新操作系统 sudo yum update -y sudo yum upgrade -y下载并安装anaconda 在命令行中&#xff0c;输…

python--杂识--15--python调用c代码

两种方法&#xff1a; Python/C apictypes 1 Python/C api 1.1编写代码 c_test.c #include <Python.h>// C的原生函数&#xff0c;实现两个整数的相加 int add(int a, int b) {return a b; };// compute_add【一般&#xff1a;模块名_函数名】&#xff0c;按照pyth…

渗透测试-Fastjson反序列化漏洞getshell

目录 前言 测试环境准备 dnslog测试 搭建rmi服务器&准备恶意类 引用JdbcRowSetImpl攻击 反弹shell$命令执行 总结 关键字&#xff1a;fastjson 1.2.24反序列化导致任意命令执行漏洞 注&#xff1a;本次渗透测试全在虚拟机中进行仅用于学习交流&#xff0c;请勿在实…

直播间讨论区需要WebSocket,简单了解下

由于 http 存在一个明显的弊端&#xff08;消息只能有客户端推送到服务器端&#xff0c;而服务器端不能主动推送到客户端&#xff09;&#xff0c;导致如果服务器如果有连续的变化&#xff0c;这时只能使用轮询&#xff0c;而轮询效率过低&#xff0c;并不适合。于是 WebSocket…

QT-- out of memory, returning null image

提示&#xff1a;本文为学习内容&#xff0c;若有错误&#xff0c;请及时联系作者&#xff0c;谦虚受教 文章目录 前言一、崩溃信息二、错误原因1.QImage2.QStandardItemModel 三、问题解决总结 前言 学如逆水行舟&#xff0c;不进则退。 一、崩溃信息 崩溃信息: QImage: out…

UIButton

titleEdgeInsets和imageEdgeInsets titleEdgeInsets和imageEdgeInsets的作用是用来移动btn两个子空间的排布的 它们只是image和label相较于原来位置的偏移量&#xff0c;那什么是原来的位置呢&#xff1f;其实就是不设置Insets的那个状态。下面为不设置insets的状态。 默认情…

AGMZE-A-32/100、AGMZE-A-10/350比例溢流阀控制器

AGMZO-A-10/315、AGMZO-A-20/210、AGMZO-A-32/100、AGMZO-A-10/50、AGMZO-A-20/350、AGMZE-A-10/50、AGMZE-A-20/210、AGMZE-A-32/100、AGMZE-A-10/350、AGMZE-A-20/50锥阀型&#xff0c;先导式&#xff0c;数字型比例溢流阀&#xff0c;用于压力开环控制。 A型&#xff0c;与…