关于游戏人工智能关键技能与应用的介绍

  游戏人工智能集中体现了一款游戏的可玩性。随着智能技能的深入发展,游戏人工智能已成为提高一款游戏可玩性的技能核心,以及游戏推广的主要卖点,深化了游戏体验境界。因此,深入研讨分析游戏人工智能关键技能与应用具有极高的现实价值。

  【Abstract】The game artificial intelligence embodies a reflection of a game playability. With the further development of intelligent technology, the game artificial intelligence become the core for improving the game playability and the main selling points , it also deeps the gaming experience. So, it has high practical value for in-depth analysis the game key technology and application of artificial intelligence.

  【关键词】游戏;人工智能;关键技能;应用

  【Keywords】game; artificial intelligence; key points; application

  【中图分类号】TP18 【文献标志码】A 【文章编号】1673-1069(2017)03-0069-02

  1 引言

  计算机硬件水平的显著提升,使得游戏开发设计者使用的游戏引擎不时迭代更新。

  目前,人们已不再满足游戏中优美绚丽的视听体验,转而注重游戏的可玩性,可玩性日渐成为游戏设计中的核心环节,而人工智能集中体现了游戏的可玩性。所以,立足于此,探讨了游戏人工智能的基本定义,并分析了基于通用AI引擎的策略游戏设计,以供参考和借鉴。

  2 游戏人工智能的基本定义

  游戏人工智能技能侧重在个人终端设备有限本能的条件下,为游戏玩家模拟出真实感,使之沉浸在这种真实感中,有一种处于现实中的体验。一般情况下,普通的计算机设备的CPU运算能力及内存存储都是有限的,利用人工智能技能可以对游戏中的非玩家角色进行计算和操作,同时还可以进行行为决策等,使玩家在交互中体验真实感。一款游戏中的人工智能无须太过“聪明”,甚至偶尔需要限制它的有效性,避免AI太强大挫败玩家,使玩家获得不好的游戏体验。人工智能技能从广义层面来说,便是存在于游戏中的多样化的形式,比如像马里奥里的敌人乌龟;“使命呼唤”里的虚拟队友等都是游戏AI应用的典型例子[2]。

  3 基于通用AI引擎的策略游戏设计

  3.1 Unity3D游戏引擎

  目前,设计开发手游和网游的主要游戏引擎便是Unity3D,其以图形效果好、资源管理便捷、通用全面等优势已成为主流的商用游戏开发引擎。Unity3D的脚步引擎支持C#语言、Unity Script、Boo。其构建游戏世界时应用的是组件式,游戏对象便是游戏中的物体,其内置有多个组件,比如网格模型、物理组件、导航组件、声音组件等,将这些不通过的组件定义在游戏对象上,提高游戏对象的真实感,为游戏玩家带来逼真的游戏体验[3]。Unity3D除了内置的组件外,还能够放入开发设计者自定义的组件来满足不同的开发设计需求。此外,开发设计者在利用Unity3D设计游戏关卡时能够直接在游戏中拖拽和摆放游戏对象,之后点击播放按钮,在Game面板里就能够直接、实时查看游戏的运行效果,这是所见即所得的开发方式。Unity还能够为游戏开发设计者提供扩展接口,利用开设设计者的自定义插件不时扩充引擎能力,为游戏开发过程提供强大助力[4]。

  3.2 游戏的大纲设计

  3.2.1 游戏项目的基本信息

  游戏项目的基本信息如表1所示。

  3.2.2 游戏的基本流程

  一个游戏必须具备完善的流程,才能有效支持其畅快地运行。本文分析的策略游戏设计,其整体上的基本游戏流程包括以下两个阶段。

  ①开场阶段。也便是我们所说的游戏的起初。该阶段是整个游戏的开端,也是进入游戏的基础前提,需要根据整个游戏场景设置相应的环节,有力支持整个游戏的运行。本文分析的游戏项目具体包括祭坛、灵魂归宿、黑暗之门和阵地四个环节。各个环节都有自身的功能,其中祭坛的功能是升级英雄等级和技术;灵魂归宿的功能是升级士兵等;黑暗之门的功能是招募士兵;阵地的功能是排兵布阵。完成此环节后点击聚集石,在地图上选择对应的战场,即可进入下一阶段。郑州人流医院

  ②战斗阶段。此阶段便是游戏的重点,利用触控来对英雄的前进与后退进行操作,派兵时点击界面下方的士兵头像,从最左侧进入战场后的士兵由人工智能抑制,他们的最后指标是击败走到右边战场过程中所遇到的全部敌人。玩家通过当前关卡,就必须击败所有敌军,否则游戏失败。

  3.3 游戏的详细设计

  3.3.1 资源组织

  项目资源目录是组织游戏资源的基础(见图1),其组成的主要局部包括:

  ①Editor,其包含自定义的编辑器插件;

  ②Program,其包含以C#脚本文件为主要形式存储在相应资源目录中的全部脚本逻辑;

  ③Resources,其包含角色、动画、效果、UI资源等游戏所用资源;

  ④Scene为游戏场景,也便是设置的游戏关卡;

  ⑤playerdb,其包含重要角色的配置数据。

  3.3.2 游戏的主体架构

  Unity3D游戏引擎是该游戏主体架构的最底层,在其脚本引擎解释执行基础上完成游戏的所有智能逻辑和管理逻辑。Unity Engine库和Mono库为脚本提供了丰富的组件资源,脚本通过继承Unity3D的组件基类Mono Behaviour成为游戏主循环中的一环。构成游戏主系统的包括Game Power、Game Manager、Game Procedures目录下的文件。人工智能引擎AiGine是游戏的人工智能核心,通过该引擎来实现以下三类主要组件:

  ①Object Manager管理游戏对象;

  ②多类型Brain定义了各种类型角色的状态机管理器;

  ③多类型AI类则定义了不同类型的状态机状态,以上组件是游戏对象产生智能行为的基础[1]。

  4 结语

  通过本文内容的分析,我们能够知道游戏人工智能技能是当下游戏开发设计的核心技能,也是各款游戏的最大卖点,相信人工智能技能在未来游戏设计开发中有更广泛的应用,可以实现更高层次的游戏体验境界。

原文地址:https://www.cnblogs.com/8023feng/p/10577828.html

时间: 2024-10-17 12:31:51

关于游戏人工智能关键技能与应用的介绍的相关文章

游戏中的技能数据结构

问题:游戏中上百个技能是如何储存的,如果调用的,不会是一起加载,if判断一个一个的吧? 回答: 蓝色的字体是我们游戏中的做法 主流的做法是通过 Add Buff 和DeBuff 来实现的,下面简单Buff的释放方式 最简单的Buff需要有如下通用属性: 1.生效时间->在添加到对象上后,作用的时间长度,一般有立即作用,延迟一段时间生效等等 2.作用时间->指该Buff在对象身上作用的时间,生效后立即完全,如普通攻击,还有持续作用的,如中毒后持续扣血,眩晕等等 3.作用对象->某些技能制定

一个土豪玩家养十个免费玩家陪自己玩 免费游戏的关键在一个“诱”字,核心在一个“贱”字,本质是一个“骗”字

“老子玩游戏从来是不花钱的!”多年来这一直是中国玩家最引以为傲的地方,从过去的“盗版下载”到如今的“免费游戏”,始终如此,优越感秒杀美欧日韩! 可以说得益于中国独特的游戏环境,在这片土地上孕育了一批可能是世界上最抠门的玩家,“如何让中国玩家为游戏掏钱”简直是一个世界性难题!当然天才的中国运营商最终找到了为这些铁公鸡拔毛的办法. “免费游戏”模式最早出现于国内的一些私服,之后<热血传奇><传奇世界>等大型网游也开始试水,直到<征途>震撼上线,首次明确了“一个土豪玩家养十个

《游戏人工智能编程案例精粹》读书笔记&mdash;状态驱动智能体设计

一个有限状态机是一个设备,或是一个设备模型,具有有限数量的状态,它可以在任何给定的时间根据输入进行操作,使得从一个状态变换到另一个状态,或者是促使一个输出或者一种行为的发生.一个有限状态机在任何瞬间只能处于一种状态. 状态变换表 状态变换表是一个条件和那些条件导致的状态的表,这个表可以被智能体在规则的间隔内训问,使得它能基于从游戏环境中接收到刺激进行必须的状态转换. 内置的规则 每个状态模块依靠自身的逻辑来决定它是否应该运行自己变换到一个替代状态,智能体只向外部提供操作和获取自身属性的函数,状态

《游戏人工智能编程案例精粹》读书笔记—数学和物理学初探

1.1.1 笛卡尔坐标系 在二维空间中,笛卡尔坐标系被定义成两个坐标轴成直角相交并且用单位长度标出.水平轴称为x 轴,而垂直轴称为y 轴,两个轴的交点称为原点,如图1.1 所示. 如图1.1所示,每个坐标轴端点的箭头表示它们在每个方向上无限延伸.假想有一张无限大的纸,上面有x 轴和y 轴,纸就表示 xy 平面,所有二维的笛卡尔坐标系中的点都可以给制在这个平面上.在2D 空间中的一个点可以用一对坐标(x,y) 表示.x 和y 的值代表沿着各自的轴上的距离. 为了表达三维空间,需要另外一个坐标轴z铀

《游戏人工智能编程》感想一

书名<游戏人工智能编程>作者mat buckland 里面讲了一个west world项目.这是一个简单的玩具教学项目,为了让读者能够实现一个稍微具有智能的智能体.游戏的内容是 1一个矿工在挖金矿,会随机得到金矿,放入背包 2背包的容量有限,背包满则一定要去卖掉 3矿工有体力值,体力为0要休息. ps,书中有口渴值的存在.但是口渴饥饿什么的都是一种"疲劳值"引入游戏就是为了增加限制条件和增加程序的复杂度.所以对于新手(我)来说还是尽量减少程序复杂度好. 实现方法: 作者谈到

游戏人工智能开发之6种决策方法

人工智能遵循着:感知->思考->行动 决策方法:有限状态机(Finite-State Machines),分层状态机(Hierarchical Finite-State Machines),行为树(Behavior Trees),效用系统(Utility Systems),目标导向型行动计划(Goal-Oriented Action  Planners),分层任务网络(Hierarchical Task Networks) 有限状态机 有限状态机是目前游戏AI中最常见的行为模型.状态机的代码简

数据分析之游戏内关键数据分析

根据相关性的数据分析 游戏内的数据各种各样,获取的方式和方法也各有不同,本文主要介绍通过相关性的分析方法. 什么是游戏的相关性? 什么是游戏的相关性,作为一个分析的"侦探"那么游戏的相关性也就是线索,熟悉游戏的相关性的"心法"就可以快速和正确选择分析的切入点.本文主要通过找到LOL游戏中角色金币,进而演示.("基础篇"演示直接找到角色金币逻辑,"进阶篇"中将会演示如何通过金币的和交易逻辑的相关性找到角色的装备). 一.基础篇

lua 游戏开发_技能定义字段

-- 技能分组 eSG_Attack = 0; -- 普攻 eSG_Skill = 1; -- 技能 eSG_TriSkill = 2; -- 触发技能 -- 技能效果类型 eSE_Damage = 1; -- 伤害 eSE_Buff = 2; -- 祝福 eSE_DBuff = 3; -- 诅咒 -- 技能类型 eST_Attack = 1; -- 主动 eST_Tri = 2; -- 触发 eST_Passive = 3; -- 被动 -- 伤害类型 eSD_ATN = 1; -- 物理伤害

unity3d 游戏人工智能开发之状态机(C#模板与示例)

Finite State Machine 状态机 This is a Deterministic Finite State Machine framework based on chapter 3.1 of Game Programming Gems 1 by Eric Dybsend. Therea are two classes and two enums. Include them in your project and follow the explanations to get the