基于3D角色游戏中AI引擎的设计研究

时间:2022-06-27 07:17:33

基于3D角色游戏中AI引擎的设计研究

摘 要 本文以人工智能(AI)引擎与游戏场景设计及优化为主要研究目标,对优化游戏场景搭建技巧进行阐述,并分析AI引擎在3D角色游戏中的设计思路。通过复杂、高效的AI引擎,将游戏中那种更为饱满、真实的角色行为创造出来,以此不断提升角色游戏中玩家和智能角色的互动。

【关键词】AI引擎 3D 角色游戏 场景设计

iPhone平台游戏、Android平台游戏及网页游戏等在近些年迅猛发展,并逐渐成为对发展游戏具有带动作用的新生力量。但是,当今很多游戏都处于宣传攻势重于游戏内容品质的境况,而且玩家在游戏体验过程中,会逐渐提升对游戏操控性与沉浸感需求。基于这种现象,使得3D游戏逐渐成为国内游戏主要发展方向。

1 游戏场景的设计

在开发游戏时,贴图和模型的合理搭建能够将炫丽的游戏场景提供给玩家,以此提升游戏本身意境,并将游戏主题突出出来。所以,怎样快速搭建贴图和模型,确保游戏运行畅通是在设计游戏过程中亟待研究与解决的重要问题。

1.1 搭建游戏场景规范

一般通过Unity3D技术对场景中像地形、草木等基本对象进行直接搭建,但对于游戏中装饰性物品与主要角色等,必须从3D建模软件中导入。对游戏场景进行搭建时,首先要对游戏环境予以创建,然后放置物品或者角色。Unity3D在默认状态下的单位为1,一般会通过修改应用程序以与该比例相匹配,由此在资源放置时就会比较简单。

本游戏通过Maya建模,面片数要保证为32500个Polygon 面片,若大于该数量,那么物体就无法显现,所以应该对模型与多边形数量进行合理分布。在制作完成一个三维模型后,其内容主要包括单位、场景尺寸、节点编辑、命名、纹理、模型归类、纹理格式及尺寸、坐标及材质等一定要与相关制作规范相符。

1.2 优化游戏贴图

作为游戏开发平台,Unity3D模型材质通常会有很多特殊性需求,并非Maya中所有材质球Unity3D都支持,Unity3D只支持像Lambet、Blin等标准材质,且还要保证贴图尺寸为2n,贴图尺寸最大值要在1024×1024以内,烘焙过程中,对TGA格式纹理贴图进行设置。渲染优化时,应该对遮挡剔除技术进行选用,也就是说,如果其它物体遮挡该物体,且在摄像机镜头外,那么不会对其实施渲染。运行遮挡剔除是用虚拟摄像机在场景中将物体潜在可视状态创建出来,以此进一步提升游戏运行质量。

2 基于3D角色游戏中AI引擎的设计研究

2.1 构建游戏AI引擎框架

2.1.1 游戏中非玩家角色的动作控制

非玩家角色在游戏中的主要行为包括巡逻、待机、逃跑及攻击等,每个行为下的动画表现都有所不同,以程序的方式对游戏角色动作进行控制。依照游戏引擎本身特性,于游戏角色模型中绑定角色动作。此外,角色模型导出设置中,对游戏动画选项进行设置后,再在3D引擎中导入,在一定条件下,采用程序控制的方式对动画剪辑进行播放,以此控制角色动作。

2.1.2 状态机反应机制

首先对AI引擎智能进行分析:在一定范围内,游戏AI角色巡逻,对周边环境进行扫视,以观察周边有玩家入侵与否,有时可立于原地,若无外界条件触发则为空闲待机状态,但若在其可视范围内有玩家,则会主动攻击,围攻玩家,以此对玩家造成伤害,如果其生命力比较低,则会自动逃跑。根据AI角色表现,能够获得AI角色的状态及其相互转换。

Idle 状态:该状态为空闲状态,在平静状况下的基本状态。如果无条件触发,AI角色在一段时间后就会自动转入Idle状态。

Attack 状态:该状态为攻击状态,具体是攻击出现在其视野中的玩家,对其造成伤害。如果AI角色生命力比较低,就会自动向Escape状态(即:逃跑状态)转换,如果玩家在其可视范围外,则会自动向Patrol状态(即:巡逻状态)转换。

2.2 基于3D角色游戏的AI引擎寻路算法

通过特定寻路算法帮助游戏角色寻路,也就是说,根据某种规则对从起始点到终点的路径进行计算。本文主要分析WayPoint寻路算法,并具体应用于角色游戏中。该寻路算法具体是将若干个路径点(waypoint)进行标记,采用矢量线连接各路径点,确保游戏AI角色可以在某种规律下沿路径线自动寻路。可手工设置这些路径点,也可程序自动生成。路径点寻路时,游戏场景中,需要获取任意两点路径,可以从目标点与起始点各取一个路径点,对这两个路径点最短距离进行计算,以此将目标点与起始点最优路径计算出来,这就是角色行走路径。游戏角色在到达目标点后,必须在其视野中可看到下一最优路径点,由此就能够在最优路径中进行自由活动。

3 总结

本研究分析与探讨了基于3D角色游戏的游戏场景布置与AI引擎的设计与优化。采用三维建模软件实施建模后,对游戏场景于Unity3D中进行优化,结合AI引擎关键技术、制作过程及游戏半身,确保能够在游戏中将游戏玩家与职能角色对抗效果充分体现出来,整个游戏主线是任务关卡形式,因此要合理设计游戏非玩家角色,必须通过程序对个性化敌人进行设计,以确保游戏具有真实性、挑战性以及可玩性,这对3D角色游戏的设计与实现极具重要参考价值。

参考文献

[1]JACOBS,S.Game programming gems7[M].北京:人民邮电出版社,2010:191-151.

[2]MARK DELOURA.Game programming gems1[M].北京:人民邮电出版社,2010:208-219.

[3]倪乐波,戚鹏,遇丽娜等. Unity3d 产品虚拟展示技术的研究与应用[J].数字技术与应用,2010(9):54-55.

[4]FUNGE J D.Artificial intelligence for computer games[M].北京:北京邮电大学出版社,2007:158-159.

作者单位

西安理工大学大学 陕西省西安市 710048

上一篇:延安时期中央组织部的历史贡献及其现实启示 下一篇:祁承邺的藏书思想及理论实践