文档章节

工具分享:GameplayKit苹果手游开发工具简析

科技创造
 科技创造
发布于 2015/07/04 10:18
字数 1160
阅读 379
收藏 1

      6月9日WWDC2015大会上,苹果宣布iOS 9将推出两个非常重要的手游开发工具GameplayKi和ReplayKit,这两个工具对于iOS手游开发者及欧美游戏视频相关领域可能会产生比较大的影响。GameplayKit开发工具极有可能成为今后iOS手游开发的主流工具,小爱在这里向大家简单介绍下这款工具,有兴趣的iOS开发者可以尽早get新技能。

 

GameplayKit是什么?

      GameplayKit是一款帮助新手开发者们在OS X和iOS平台创作游戏的基础工具和技术框架,它能提供游戏资源、模块、玩法设计以及系统规等方面的内容。GameplayKit主要是帮助开发者研发游戏的玩法并设计模块化组件、用最少的努力做出可扩展的游戏架构,但不包括视觉渲染等功能。对于部分资深开发者们来说,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提供一个实体组件架构,帮助你设计可以重复使用的玩法代码,并为解决复杂的面向过程的代码提供一个状态机系统(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直接创作游戏。

ps:以上文字由爱加密翻译并整理自网络,内容参考苹果官网《GameplayKit参考和编程指南》,开发者对GameplayKit工具感兴趣可以在苹果官网详细了解。

文章来源:http://www.ijiami.cn/newsInfo?id=634&v=3

本文转载自:http://www.ijiami.cn/newsInfo?id=634&v=3

科技创造
粉丝 37
博文 199
码字总数 174505
作品 0
徐汇
程序员
私信 提问
cocos2d-x支持c++、js、lua开发

作者:左文 链接:https://www.zhihu.com/question/21130385/answer/21789568 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 纯属个人观点 1 Unity3d支...

壹峰
2017/10/18
200
0
手游开发神器 cocos2d-x editor 教程聚合和代码下载(持续更新中)

一 cocos2d-x editor工具下载和基础教程: 一 手游开发神器 cocos2d-x editor初识 二 手游开发神器 cocos2d-x editor工具下载和安装配置 三 手游开发神器 cocos2d-x editor 之基础工具 inte...

makeapp628
2014/02/11
0
0
听完这个课程,你就能DIY像“愤怒的小鸟”辣么爆款的游戏!而且有可能成为合伙人!!!

现在, 有这么一个免费的体验机会, 手把手教你开发手游。 你还在等什么? 讲师简介 熊礼平 南京大学物理系博士,乔治华盛顿大学博士后。 擅长计算机动力学模拟,曾经成功模拟过大肠杆菌的细...

hailuobang
2015/12/28
4
0
thorqq/RaidenFree

功能介绍 本游戏是一款基于Cocos2dx开发的纵版飞行射击单机手游。玩家可以控制一架飞机与敌机进行对战,飞机可以发射子弹、导弹甚至激光,除此之外,玩家还能对自己的飞机进行强化改造,提升...

thorqq
2017/01/20
0
0
听完这个课程,你就能DIY像“愤怒的小鸟”辣么爆款的游戏!而且有可能成为合伙人!!!

现在, 有这么一个免费的体验机会, 手把手教你开发手游。 你还在等什么? 讲师简介 熊礼平 南京大学物理系博士,乔治华盛顿大学博士后。 擅长计算机动力学模拟,曾经成功模拟过大肠杆菌的细...

hailuobang
2015/12/28
34
0

没有更多内容

加载失败,请刷新页面

加载更多

500行代码,教你用python写个微信飞机大战

这几天在重温微信小游戏的飞机大战,玩着玩着就在思考人生了,这飞机大战怎么就可以做的那么好,操作简单,简单上手。 帮助蹲厕族、YP族、饭圈女孩在无聊之余可以有一样东西让他们振作起来!...

上海小胖
今天
8
0
关于AsyncTask的onPostExcute方法是否会在Activity重建过程中调用的问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/XG1057415595/article/details/86774575 假设下面一种情况...

shzwork
今天
7
0
object 类中有哪些方法?

getClass(): 获取运行时类的对象 equals():判断其他对象是否与此对象相等 hashcode():返回该对象的哈希码值 toString():返回该对象的字符串表示 clone(): 创建并返此对象的一个副本 wait...

happywe
今天
6
0
Docker容器实战(七) - 容器中进程视野下的文件系统

前两文中,讲了Linux容器最基础的两种技术 Namespace 作用是“隔离”,它让应用进程只能看到该Namespace内的“世界” Cgroups 作用是“限制”,它给这个“世界”围上了一圈看不见的墙 这么一...

JavaEdge
今天
8
0
文件访问和共享的方法介绍

在上一篇文章中,你了解到文件有三个不同的权限集。拥有该文件的用户有一个集合,拥有该文件的组的成员有一个集合,然后最终一个集合适用于其他所有人。在长列表(ls -l)中这些权限使用符号...

老孟的Linux私房菜
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部