当前位置: 首页 > 网络学院 >

苹果手游开发工具:GameplayKit开发指南

新客网 XKER.COM 时间:2015-06-16 11:30:50来源:Cristian gamelook  评论:

苹果手游开发工具:GameplayKit开发指南_新客网

6月9日凌晨举行的WWDC 2015大会上,苹果宣布iOS 9的同时推出了两个非常重要的工具,分别是GameplayKit以及ReplayKit,从该公司的介绍中来看,这两个工具对于iOS手游开发者以及欧美游戏视频相关领域可能会产生比较大的影响。

简单的说,GameplayKit就是一个帮助新手开发者们在OS X和iOS平台创作游戏的基础工具和技术框架,可提供游戏资源、模块、玩法设计以及系统规则方面的内容,并不包括视觉渲染等功能。因此,可能对于有些资深开发者们来说,支持多平台发布、功能更为复杂的游戏研发框架或许会更适合。

而ReplayKit的细节透露较少,在苹果的官网,我们可以看到,玩家们可以通过该功能在游戏中录制、编辑并在线分享游戏,并没有进一步的说明。

苹果手游开发工具:GameplayKit开发指南_新客网

以下为整理的苹果官方《GameplayKit参考和编程指南》(由于篇幅限制,这里仅翻译概念部分,想了解实例请移步苹果官网,还可下载样本游戏代码):

第一部分:框架参照

提示:这是一个正在研发的API或技术的概要文件,苹果公司提供这些信息主要是为了帮助你通过苹果产品使用这些技术或者编程界面而做好计划,该信息有可能会在未来发生改变,本文当中提到的软件应该以最终发布的操作系统测试和最终文档为准,未来有可能会提供新版本的文档信息。

GameplayKit是一个面向对象的框架(Object-oriented framework),为在OS X和iOS平台打造游戏提供基础工具与技术。GameplayKit包括为设计游戏功能而提供的工具、可重复使用的架构,还包括为创造和提高玩法功能而研发的技术,比如角色移动和敌人的行为设计等等。

初识GameplayKit

GameplayKit框架包含了一些独立的分支系统,覆盖了游戏设计和研发的多个领域。

  • 随机化(Randomization):使用GKRandom协议、GKRandomSource以及GKRandomDistribution class,而且还有更多独特的subclasses来增加游戏玩法的不确定性,同时不需要以增加BUG调试量为代价。

  • 状态机(State Machines):使用GKStateMachine和GKState class打造模块化的玩法系统。

  • Minmax Strategist:GKMinmaxStrategist class为回合制游戏中的敌人提供AI设计,想要使用一个Strategist的话,你需要用GKGameModel协议以及相关协议来描述游戏玩法。

  • 寻路系统(pathfinding):使用GKGraph和GKGraphNode class以及它们的subclasses来为你的游戏世界导航建模,并且为游戏对象找到可以使用的路线。

  • 代理、目标和行为:GKAgent class提供模拟功能你可以通过GkGoal对象为游戏单位定制化移动行为规则,每一个class都为一个代理自动跟随设计了高等目标。

  • 规则系统:使用GKRuleSystem和GKRule class打造复杂的游戏逻辑,包括模糊推理(fuzzy reasoning)以及应急行为。

第二部分:GameplayKit编程指南

GameplayKit是为iOS和OS X平台做游戏而研发的一系列基础工具和技术,与更高级的SpriteKit以及SceneKit游戏引擎不同的是,GameplayKit并不包含动画和视觉渲染等内容。GameplayKit主要是帮助开发者研发游戏的玩法并设计模块化组件、用最少的努力做出可扩展的游戏架构。

GameplayKit功能

打造、改善和维护一个复杂的游戏需要非常好的游戏设计。GameplayKit提供一个实体组件架构,帮助你设计可以重复使用的玩法代码,并为解决复杂的面向过程的代码提供一个状态机系统(State Machine System)。GameplayKit还包含了一些随机化的工具,可以为很多种玩法提供基本的资源。

创作一款优秀的游戏还需要使用复杂的算法(algorithms)来解决很多常见的游戏玩法问题。通过GameplayKit,你不再需要写自己的算法,而是可以直接使用GameplayKit提供的资源,这样开发者就有更多的时间专注于把玩法做到更加独特。

比如,你可以使用Minmax Strategist功能为回合制游戏打造AI系统、通过寻路功能为游戏角色设计导航路线,为高等级的游戏角色设置自动行走或者使用与代码分离的规则系统并实现模糊逻辑推理(Fuzzy Logic Reasoning)。

由于GameplayKit在iOS和OS X系统中是独立于高级游戏引擎而存在的,因此你可以拿它与任何可以做一个完整游戏的技术进行整合,比如做2D游戏用的SpriteKit、做3D游戏用的SceneKit或者使用Metal/OpenGL ES定制化的第三方游戏引擎。对于画质要求不高的游戏来说,你甚至可以只用GamePlayKit和(iOS里的)UIKit或者(OS X中的)AppKit直接创作游戏。

如果您喜欢本文请分享给您的好友,谢谢!感谢本文来源方:Cristian gamelook

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)