本文首发网易游戏学院APP、由“网易互娱AI Lab”供稿,GameRes经授权发布。
【游戏平衡篇】
一、前言
AI或许能成为游戏产业未来破局点?
近日,《2020年1-6月中国游戏产业报告》发布了。报告显示,今年上半年,中国游戏产业实际销售同比增长22.34%,实现了逆势增长。然而,报告也指出了随着游戏市场扩张,人口红利已逐渐消失,用户规模增长放缓,游戏行业竞争已愈发激烈。
(数据来源:中国音像与数字出版协会《2020年1-6月中国游戏产业报告》)
伴随着用户争夺战的,还有越来越严格的游戏监管政策。2018年版号限制以来,游戏版号发放数量持续下降。监管层有意通过控制数量引导行业创新与品质升级。
针对这种趋势,“游戏出海”和“云游戏”再度成为热点话题。但不论哪种选择,对于游戏厂商而言都是一场优胜劣汰、适者生存的考验。而AI或许能够为游戏开发者们加速游戏创新、打造精品游戏、创造更优体验,抢占更多的市场份额提供更多可能性。
二、AI能够解决游戏设计难题
在游戏发展的早期,AI其实就已被用于解决游戏设计难题了,如上世纪80年代风靡全球的经典街机游戏《吃豆人》。
在这款游戏里,玩家需要躲避四种不同颜色怪物的追击,同时吃掉迷宫里的所有豆子。这4种不同颜色的怪物采用了不同的追击算法,因此不会排着队追击玩家,而是从不同路径、以不同方式对玩家进行围追堵截。在《吃豆人》中,游戏角色第一次表现出了丰富的个性。此外,游戏还采用了Meta AI,针对不同水平的玩家动态调整难易程度,以提供更个性化的游戏体验。
(图片来自1980年撰写的《吃豆人》设计策划书:4只怪物在不同状态下的行动模式设计表)
随后,越来越多的电子游戏开始将AI技术与游戏结合。在这些游戏里,AI大多扮演的还是游戏中的怪物或Boss的角色,主要目的是为了带来更好的游戏体验和控制难易程度。
近年来,随着视频游戏的不断发展和技术的更迭进步,AI在游戏中开始有了更多的角色和功能。比如在《巫师3》里,AI可以基于设定好的动作和场景自动生成过场动画,其中的镜头位置、角色表演内容和动作变化等都是AI自动完成的。
在这篇文章里,我们将重点将从游戏平衡性的角度,一起探讨AI是如何辅助游戏设计的。
三、AI帮助增强游戏平衡性
随着人工智能技术,尤其是强化学习技术的不断发展,我们日常更加熟悉的或许是新闻里称霸各类型游戏的AI:零封围棋世界冠军柯洁的AlphaZero,在星际争霸中击败99.8%的玩家的“AlphaStar” ,在电竞游戏中击败世界冠军的Dota2 AI “OpenAI Five”,以及在六人无限制德州扑克中击败人类职业选手的Pluribus……
然而游戏AI的目的并非完败人类,而是为了提供旗鼓相当的对战体验,保证游戏难度平衡,让玩家享受到竞技趣味。下面将从战斗机器人、测试机器人和游戏匹配几方面来解释游戏AI是如何帮助确保游戏平衡性的。
战斗机器人
小怪、BOSS、NPC等由电脑控制的游戏机器人不仅是游戏中的必备角色,有时甚至可以成为游戏的一大卖点。如日本游戏厂商 From Software 开发的《魂》系列和《只狼:影逝二度》,其高难度的关卡战斗设计曾引起玩家的广泛讨论,并激起了很多游戏高手的挑战欲望。
《只狼》
而在PVP游戏中,自动化的战斗机器人也有多种用途,如空闲时段的排位补位机器人,给连败玩家送福利的温暖局机器人,以及新手指引、进阶练习中的陪练机器人等。
然而,实现一个机智有趣的游戏机器人并非易事。简单地通过调整游戏角色的数值来调节AI强度并不适用于所有的游戏,过难或过易都会引起玩家的反感,大大降低游戏的乐趣。我们真正需要的是一个智能灵活、难度适中的游戏AI。这意味着开发者需要针对游戏中可能发生的不同情况,设计合理的AI行为逻辑,并通过角色的控制接口展现具体的游戏内行为。
传统上,业界在开发游戏NPC或Bot时采用的是规则驱动的方式(如状态机、行为树,或GOAP\HTN等更复杂的效用系统),人为定义的条件会触发预先设计好的游戏行为,条件越多,行为越复杂,角色看起来就更智能。规则驱动的局限性也很明显,主要体现在两个方面:一是规则很难涵盖所有的情况,设计出来的机器人表现就会比较僵硬;二是需要大量的人力去设计实现复杂的AI行为逻辑。
以强化学习为代表的人工智能技术则恰好能够突破以上两个限制。我们可以构造出一个以游戏状态为输入,角色控制动作为输出的神经网络模型,通过训练的方式摆脱对人工设计的依赖,同时获得一个更加聪明的机器人。
UE4 的行为树
典型的强化学习交互流程
强化学习是一类不依靠数据,在与特定环境的交互中不断试错,发掘最优策略来解决给定任务的人工智能方法。与图像种类预测、机器翻译等深度学习任务不同,强化学习模型并不需要提前准备好的数据。模型会作为一个角色参与到游戏中,针对游戏中可能发生的各种情况(State),尝试不同的动作(Action),并根据游戏的反馈(Reward)调整行动策略,直到模型可以完美地完成设定的任务。得益于神经网络强大的泛化能力,强化学习模型除了能够用于研发Bot和NPC以外,甚至能够处理像星际争霸这种每帧理论可选操作多达10^26的复杂游戏。
DeepMind 介绍星际争霸的操作复杂度
另外,对比下图游戏AI的开发流程,我们可以看出,通过强化学习,游戏AI设计实现的人力成本,变成了设计模型的人力成本和训练模型的机器成本。因此,当期望得到的游戏AI足够复杂时,强化学习方法将更具成本优势。
传统AI开发流程
强化学习AI开发流程
测试机器人
保证游戏战斗系统的平衡性一直是游戏开发的难点之一。比如,在MOBA游戏中新加入一个英雄后,游戏策划既要保证这个角色自身的技能和数值设计符合预期,又要确保该角色与其他英雄配合时不会存在无解的套路,不然同样会影响竞技的公平性。而这个过程通常需要大量人力去反复进行游戏测试和设计调整。
上文提到,强化学习能够通过在环境中不断试错得到一个强大的游戏AI。而基于这种“不断试错”的特性,我们可以将强化学习模型转变成为一个强有力的自动化游戏测试工具。
具体来说,首先我们可以训练得到一个近似高端玩家水平的游戏AI,再通过与其他现有角色的AI进行模拟战斗,就可以在角色上线之前模拟真实的对局数据,并以此来调整角色的设计,评估角色加入后对游戏平衡性的影响。同时,如果游戏环境中存在的漏洞,模型也非常有可能在海量的探索尝试中发现并加以利用,间接地帮助我们挖掘出隐藏很深或是极端操作下才会触发的游戏bug。
此外,对于一些相对简单的游戏环节,比如MMORPG游戏中的一个小副本任务,利用搜索算法或者适量的人类玩家数据进行监督学习,还能够快速生成测试跑图机器人。
战力评估与智能匹配
相信很多玩家都有过被队友坑,或被对手完虐的体验。通过AI的匹配机制,我们可以准确评估玩家水平、匹配水平相当的队友以及对手,保证对战的公平性,改善玩家的游戏体验。
相比传统ELO等方法,Trueskill2可以综合先验信息(如装备购买情况、游戏经验值等)和后验信息(如局内击杀数、被击杀数、断线逃跑情况等),通过概率图模型让消息在整个模型中传播,不断修正对玩家水平的评估,在几个对局内就获得对玩家水平的准确估计。
Trueskill2原理图
而在水平匹配的基础上,玩家可能对社交也有相应需求。我们可以通过AI算法分析玩家用户画像,再进行相应匹配,就能够满足玩家更高层面的追求。
以上就是关于AI如何增强游戏平衡性的一些分享~
【游戏环境篇】
要问每一个FPS游戏玩家心中的痛是什么?“知道对手开挂却又制裁不了”绝对算得上一个回答。例如,玩守望先锋时遇到锁头挂,无论怎么蛇皮走位,都会被外挂瞄准头部一顿扫射,凭人类的反应完全无法抗衡,简直叫人抓狂。
毫无疑问,一场精彩刺激的对局中如果出现了外挂、辱骂等恶意行为,必然会破坏玩家正常的游戏体验。AI可以通过图像识别或用户画像分析来打击游戏外挂,也能够基于语音语言识别技术过滤脏话等敏感信息,让游戏环境更加公平公正、清洁有序。
一、外挂打击
游戏外挂五花八门、层出不穷,比如竞技类游戏的全图作弊器、数值修改器等外挂,RPG游戏存在的自动挂机、自动刷野等外挂。传统应对方案就是在客户端打各种安全补丁,但道高一尺魔高一丈,外挂插件也会随之迭代,令各大游戏厂商苦不堪言。
比如吃鸡游戏的透视挂, 无论玩家躲在房间里还是掩体背后, 都会被开挂者一览无余。本质上,开挂者是对客户端进行了非法修改,使游戏画面展现了本不该被获知的信息。而AI能够定期或在满足特定条件时(如某位玩家在无视野情况下将对手枪枪爆头),对游戏画面进行检测,从而让外挂行为无处遁形。
吃鸡游戏中的透视挂
利用AI进行图像识别打击外挂,其基本的原理结构是卷积神经网络(Convolutional Neural Networks, CNN)。CNN通常是一个多层的网络,能够通过卷积(convolution)这种数学操作来“观察”图像中的各个区域。而每块区域的计算输出会经过非线性的激活函数,并在更高层进行汇总,直到在最高层得到目标输出。针对反外挂,CNN的输出可以是一个二元判断,即游戏图像是否有外挂嫌疑。只要在训练时给AI看过足够多的外挂图片,AI就能记住这类图片的特点,并对于外挂进行无死角监控。
卷积神经网络
类似地,AI还可以对于玩家上传的图片如头像进行违规审核,阻止其中的色情暴力内容。未成年人防沉迷用的人脸识别同样是基于类似的原理,只需要将输入从一张图片变成两张图片,保证用户实时验证的人脸和注册人脸为同一个人即可。
二、聊天内容过滤审核
游戏聊天公屏界面里不受控制的言论会带来很多潜在的风险,辱骂、色情、政治、暴力、广告破坏了游戏环境,影响玩家正常交流,困扰着很多游戏工作室。传统解决方案为采用关键字过滤,但是玩家的表达方式在不停演化。简单的关键字识别很容易利用字符填充、谐音、俚语等方法绕过。对于有利可图打广告的灰色产业工作室,更是新说法层出不穷。
在这种情况下,我们就可以借助AI模型强大的泛化能力来识别敏感信息,例如基于TextCNN和Transformer的分类器。TextCNN是卷积神经网络在文本分类上的应用,其结构简单、性能快,适用于聊天内容短,非法特征明显、信息集中的情景。
TextCNN原理图
Transformer则是google在2017年提出的网络结构,相较于TextCNN它的结构更加复杂也更加灵活。Transformer的self-attention结构根据上下文内容的关联程度自动调节每个字的权重,使得特征信息得以凸显。Multi-head Attention将字向量分成多段,每一段分别与不同的Attention矩阵计算,允许模型捕捉更多样的语境信息。
游戏内的图文信息体量巨大且繁杂,传统方式或许难以有效识别和过滤敏感内容,但深度学习凭借极强的学习能力,能够从容做出应对,创造一个更有秩序的游戏世界。
关于AI如何改善游戏环境的一些技术分享到这里就结束啦。
【画面质量篇】
对玩家而言,画面是接触游戏后的“第一印象”,甚至很大程度上可以决定玩家究竟是“一见钟情”还是“不感兴趣”。因此,精美的画面已成为各类游戏表现力的保证。
例如,作为无数资深游戏玩家心头“白月光”的次世代游戏《刺客信条:起源》中,优秀的画面一直是其吸引众多玩家的最大特色之一。除了细致的人文风貌刻画外,每一个形象鲜活自然的NPC也进一步增强了游戏的代入感。
但制作精良的游戏通常意味着强大的游戏美术支持,而强大的美术资源背后则是高昂的时间成本和巨额的制作费用。AI的一系列技术,能够帮助减少动画制作的成本和时间,让更精美的游戏画面成为可能,从视觉层面提升玩家的游戏体验。例如,AI语音驱动角色面部动画技术和角色动作控制技术。
一、AI语音驱动角色面部动画技术
谈到角色面部动画,大众更为熟悉的技术是面部动捕,传统的面部动捕技术需要配备专业动捕设备和演员进行拍摄,还会产生高昂的费用。但实际上,除了面部动捕技术以外,还有一种成本更低、适用场景更多的AI黑科技——语音驱动角色面部动画技术。
语音驱动面部角色动画技术框架
首先,我们需要建立一个足够量的语音和对应的面部表情动作序列数据,基于这些数据训练出一个端到端的深度神经网络模型。不论是从语音到表情和口型标签,还是从语音直接到三维角色的面部表情控制器,该模型都可以取得相当不错的泛化能力,基本可以做到一个模型就能处理不同性别、年龄、语言的语音数据。
管纯基于语音的面部动画在精度和效果上距离面部动捕还有一些距离,但受限于成本,以本世代3A游戏的体量,不可能每个NPC都有动捕的待遇。利用该技术,一方面,可以用极低的成本让游戏里的所有人物都具有一定的表情动画;另一方面,在国际化背景下,很多游戏是拥有多语种配音的,目前还没有游戏工作室会奢侈到为一种语言的配音单独动捕一套口型动画,利用该技术可以快速生成跟不同语言发音匹配的口型动画,也可以为玩家提供更本地化的体验。
二、AI面部动捕技术
除了上文提及的语音驱动角色面部动画以外,我们将AI与图形学算法结合还能获得一种轻量级面部动捕技术,以制作更为生动的角色面部表情动画。只需要一个单目摄像头(普通RGB摄像头或RGB-D摄像头均可),在不需要设置任何面部标记点的情况下,该技术就可以实时将演员的面部表情迁移到虚拟角色上,且支持任何类型的表情制作方式(如骨骼动画、blendshapes、live2d、贴图动画等)。
目前业界主流大面部动捕套件都基于mesh-based tracking框架,基本原理都很类似,核心算法上世纪九十年代已经被提出,只是当时的AI技术还未进入深度学习时代,人脸特征检测的性能还不能够满足动捕要求的大精度,还是依赖人工在演员面部标记marker点。该方式能够获得超高精度的结果,但是使用条件非常苛刻、易用性较差。AI面部动捕技术同样基于mesh-based tracking框架,但从数据、到算法、再到工具链,实现了一套完整大轻量级面部动捕系统。
事实上,对于很多手机游戏而言,轻量级面部动捕设备都更加合适。一方面由于包体限制,很多游戏只会给主角或者非常重要的NPC制作面部表情动画,需求不大。另一方面,相比PC和主机游戏来说,手游的研发周期较短,项目组没有太大意愿在面部东部上投入太多精力。AI面部动捕技术降低了使用条件,保证一定精度的同时,提升了易用性和速度,能够提升美术生产的效率,同时还能够满足策划和营销同学对虚拟偶像直播和游戏UGC玩法等内容的需求。
三、角色动作控制技术
角色动作和状态的切换流畅度也是影响画面表现力的重要因素之一。传统的、基于状态机的角色动画控制系统中,开发一套体验完美的动作器,实现平滑自然的动作生成,其复杂程度其实超乎玩家想象。在一些动作型3A游戏中,一个主角的动画状态机轻易就可以包含几千个动作节点,这些节点之间的跳转和过渡规则完全依赖游戏开发人员的经验手工指定,其开发和维护的复杂度可想而知。
正是在这一痛点驱动下,育碧提出了Motion Matching技术,该技术将研发人员从复杂的动作过渡规则中解放出来,只需要关注目标动作本身。给定一个目标动作和一个动捕动作库,Motion Matching会根据角色的当前姿态、运动速度、运动方向等信息、自动从动捕动作库中优化出一个能从当前姿态自然过渡到目标动作的动作序列。
从事算法工作同学可能会对上述流程感到熟悉。是的,如果抛开三维骨骼动画底层的技术原理,角色动画其实就是一组描述每个骨骼点平移和旋转信息的序列数据。上述动作过渡问题,其实就是针对序列数据的插值或补全问题,这也是AI技术最擅长处理的领域之一。
AI动作控制效果示意
我们可以利用AI技术、设计一个针对骨骼动画数据的特殊网络结构,并利用大量动捕数据对该模型进行训练,从而赋予该模型从角色的当前状态、环境信息、历史状态、用户控制信号等信息、自动预测下一帧动作的能力。虽然目前该技术在游戏中落地还面临不少工程上的困难,但是相比于Motion Matching技术,AI技术无疑赋予了角色动画控制更多的想象力。凭借深度神经网络强大的泛化能力,AI模型可以从海量数据中抽象、总结出关于动作的深层次逻辑,从而实现更自然地动作切换和过渡、以及跟所处环境更好的适配。
除此之外,AI赋能美术还有更多玩法,例如基于音乐自动生成舞蹈动画;基于已有时装模型和参考时装图,快速产出时装贴图或给游戏装备“换装”;基于少量游戏人物头部模型,快速批量生成各种差异化较大的人物形象;或快速判定或转换游戏图标的风格等等。
随着游戏行业3A大作的不断出世,玩家对游戏画面和沉浸感的要求也越来越高,想要在尽量降低成本的基础上提高游戏画面质量,AI必然是最佳解决方案之一。
关于AI赋能游戏美术的分享就到这里。
文/网易互娱AI Lab
原文:https://mp.weixin.qq.com/s/QrwpVXKTgiKp94vafctfAw |