下一个手机游戏选择哪个平台?

在本文中,我们探索了几个游戏引擎和框架,重点介绍了它们各自提供的一些关键优势。 阅读本文之后,您将有几个选择可供选择,以取得更大的成功。 请注意,我们仅关注这些平台的2D方面。 让我们开始吧。

1. Cocos2D

Cocos2d是一个免费的开源框架,与Swift和Objective-C都兼容。 它支持iOS和OS X,并且还通过SpriteBuilder Android插件支持Android,前提是您的代码是用Objective-C编写的。 Swift正在为Android提供支持。

Cocos2d中的项目是通过SpriteBuilder创建的, SpriteBuilder是一个图形设计环境,您可以使用它来快速制作原型和构建游戏。 您不需要使用SpriteBuilder来构建游戏,但是,必须通过SpriteBuilder完成项目创建。

下一个手机游戏选择哪个平台?

场景管理通过CCDirector类完成,该类可以与CCTransition类一起使用众多Transitions。 它通过CCAnimation类及其CCAnimation类提供动画,包括移动,缩放和旋转等CCAction Cocos2D中具有与粒子系统支持CCParticleSystem类,并有瓷砖的地图,支持CCTiledMap类。

Cocos2d还使用OpenGL作为其渲染引擎。 它使用Chipmunk作为其物理引擎。 如果您喜欢Objective-C或Swift,并且想要针对多个平台(iOS和Android)进行开发,那么Cocos2d是值得考虑的框架。

2. Cocos2d-x

Cocos2d-xCocos2d的C ++端口,可以编译到许多其他平台。 Cocos2d-x可以编译为iOS,Android,Windows Phone,OS X,Windows和Linux。

下一个手机游戏选择哪个平台?

SpriteBuilder不附带Cocos2d-x。 但是,它确实有一些有趣的项目,例如Cocos Creator ,它提供了框架,场景编辑,调试,游戏预览以及发布到多个平台。

3.团结

Unity是一个移动游戏引擎,支持C#和UnityScript ,这是一种专门为Unity设计并以JavaScript建模的语言。 它是跨平台的,可以部署到许多平台,包括PlayStation和Xbox。 提供免费版本和提供更多功能的专业版本。 有关更多信息,请访问Unity 网站

有一个内置的精灵编辑器 ,您可以在其中可视化地切片图像,还可以使用动画制作器窗口来布局和组织动画,以及将关键帧动画添加到精灵中。 也可以在Unity编辑器中直观地设计粒子系统

下一个手机游戏选择哪个平台?

Unity使用自己的专有物理引擎。 Unity具有内置的摄像头,这使得在游戏世界中的导航变得简单。 您可以在视觉上对场景进行布局,Unity的用户界面系统包含按钮,滑块和菜单等组件。 Unity编辑器中还支持精灵打包

在游戏引擎方面,Unity是强大的力量。 如果您需要一种跨平台的解决方案,该解决方案能够支持多种设备,并且希望使用C#或UnityScript进行编程,那么Unity是一个不错的选择。 关于Unity的另一件事是资产商店 ,您可以在其中找到或购买可以在游戏中使用的资产。

4. SpriteKit

SpriteKit是Apple专有的2D游戏开发框架。 它仅在iOS和OS X上可用。SpriteKit同时支持Swift和Objective-C。

现场管理与done SKView类,并有多种与过渡SKTransition类。 SpriteKit的核心是动作,即SKAction类的实例,用于移动,旋转和缩放游戏对象。 动作也可以用来播放声音和执行自定义代码。

下一个手机游戏选择哪个平台?

SpriteKit具有一个场景编辑器,您可以在其中直观地设计游戏的关卡。 还可以使用粒子编辑器,在其中可以直观地设计粒子系统。 可以使用许多预先设计的粒子系统,例如火和雨。

SpriteKit使用Box2D作为其物理引擎。 SpriteKit为Box2D提供了一个友好的包装器,使它非常易于使用。 SpriteKit还具有一个通过SKCameraNode类的内置摄像头,可以轻松浏览游戏世界。

如果您与Apple生态系统息息相关,那么SpriteKit是一个很好的选择。

5.

Titanium是一个使用JavaScript作为其编程语言的框架。 虽然更传统地用于构建应用程序而非游戏,但它可以成为可行的游戏开发平台。 在开发过程中可以免费使用。 如果要发布游戏,则需要许可证。

Titanium支持来自iOS和Android的许多本机控件。 这样可以轻松制作视图和图像的动画。 我已经制作了一个二十一点游戏,其中包含动画和使用Titanium的不错的卡片翻转效果。

下一个手机游戏选择哪个平台?

Titanium的优点之一是下载定制模块的市场 例如,有一个Box2D模块,您可以将其插入应用程序。 如果您不需要Box2D的复杂性,则使用简单的边界框碰撞系统也可以正常工作。

尽管Titanium对于具有大量活动部件和微粒爆炸的游戏而言并不理想,但将其用于简单的纸牌游戏,琐事游戏和活动对象数量有限的游戏并不是一个可行的选择。

6. PhoneGap

通过PhoneGap ,您可以利用现有HTML,CSS和JavaScript技能,并将其打包为移动应用程序。 它的工作方式是将Web视图嵌入到应用程序中,然后将资产加载到该Web视图中。 这意味着您可以使用Canvas API来创建游戏。

PhoneGap允许访问本机API,例如设备的摄像头,麦克风,最重要的是用于游戏开发的加速度计。

下一个手机游戏选择哪个平台?

从本质上讲,PhoneGap非常简单。 它需要一个HTML驱动的应用程序,并使用Web视图将其打包为一个移动应用程序。

我们将介绍另外两个可用于创建Canvas / WebGL游戏JavaScript库,Phaser和CreateJS。

7.移相器

Phaser是用于编写2D游戏的开源JavaScript框架。 如果可用,它将使用CanvasWebGL

Phaser支持动画,粒子和补间动画以移动,缩放和旋转精灵。 它内置了对瓦片地图的支持,并根据您的需要使用了三种不同的物理引擎。 它还具有一个内置摄像头,可以轻松浏览游戏世界。

下一个手机游戏选择哪个平台?

有一些适用于Phaser的插件,包括粒子系统设计器和Box2D插件。 如果您选择使用JavaScript,那么Phaser结合PhoneGap可能是一个不错的选择。

8. CreateJS

CreateJS是一套由四个不同的开源库组成的套件:

EaselJS是基于Canvas API的库,并且可以使用WebGL(如果可用)。 TweenJS专注于补间元素,而SoundJS则专注于音频播放。 最后但并非最不重要的一点是,PreloadJS帮助预加载资产。

EaselJS支持可放置在元素上的精灵表和过滤器。 还需要一个Shape类来进行矢量绘图。 通过将TweenJS库合并到您的游戏中来完成移动,缩放和旋转。

下一个手机游戏选择哪个平台?

尽管CreateJS没有许多适合游戏开发的API,但它是用JavaScript编写的,因此您可以合并所需的任何其他JavaScript库,例如Box2D的JavaScript端口 我过去成功使用过的一个库是EaselJS的碰撞检测库。

我在Envato Tuts +上写了几篇有关CreateJS的文章。 如果您正在寻找这些库的详细介绍,那么您可能会发现以下有趣的地方:

9.虚幻引擎

虚幻引擎是使用C ++作为其编程语言的游戏引擎。 它是有限制的免费使用。 有关更多详细信息,请访问虚幻引擎网站。 您可以将游戏部署到iOS和Android。

虚幻引擎还包括一个蓝图编辑器,它使您无需编程即可直观地编写应用程序脚本。 该编辑器允许您以可视化方式设计游戏关卡,添加物理模拟,用户界面,动画,视觉效果等。

下一个手机游戏选择哪个平台?

10. Corona SDK

Corona SDK是使用Lua作为脚本语言的软件开发套件。 它可以在Windows和OS X上使用。您可以使用Corona SDK免费开发游戏和应用,但是,收购了Corona Labs的 Perk公司提供了一种企业模型,该模型可以访问本机库/ API和其他一些模型。特征。 访问他们的网站以获取有关定价的更多信息。

Corona SDK可以导出到iOS,Android,Kindle和Windows Phone8。Windows和OS X的导出处于非公开测试阶段,并将很快推出。

Corona Labs提供了一些其他吸引人的功能,例如Corona Editor ,一个Sublime Text插件,其中包括调试器,代码完成和其他一些不错的选择。 OS X上提供的Composer GUI提供了一个图形化的环境,您可以在其中设计游戏的关卡,并使用Corona的物理引擎查看对象之间的交互方式。

下一个手机游戏选择哪个平台?

Corona SDK使用OpenGL作为其渲染引擎,并使用Box2D进行物理处理。 它的物理引擎为Box2D提供了包装,使其更易于使用。 Corona SDK包含一千多种API,您可以使用它们来构建游戏。

它还通过其作曲者库内置了场景管理功能,并提供了一个出色的过渡库 ,可帮助您移动,缩放和旋转游戏的图形资产。

不幸的是,Corona SDK无法选择构建子图形集,并且使用复杂的形状进行物理碰撞检测可能很困难。 但是,有一些出色的第三方应用程序可以减轻这种痛苦,例如Texture PackerPhysics Editor

总体而言,Corona SDK是一个很棒的SDK,可用于您是否正在寻找跨平台解决方案以及是否希望使用Lua脚本语言的便利性。

11.吉德罗斯

像Corona一样, Gideros也使用Lua作为脚本语言。 Gideros是免费的开放源代码,可以编译为iOS,Android,Windows Phone,OS X,Windows和Windows RT。

虽然Lua并不是基于类的系统的面向对象编程语言,但Gideros提供了基于类的API,从而使开发人员可以编写干净且可重用的代码。

Gideros拥有一个具有各种过渡效果的场景管理器 ,一个用于动画的MovieClip类,并通过其GTween库提供补间,该库允许您移动,缩放,旋转实体等。

下一个手机游戏选择哪个平台?

尽管Gideros的Box2D API与原始Box2D API更加接近,因此使用起来也像Corona一样,Gideros也使用Box2D进行物理处理。

它提供了一些额外的工具,例如纹理打包工具和字体创建器,可以在安装目录中找到它们。 Gideros允许您通过Wi-Fi连接对移动设备上的项目进行即时测试。

与Corona一样,如果您正在寻找易于使用Lua编程语言进行跨平台开发的平台,那么这是一个绝佳的平台。

12. AndEngine

AndEngine是Android的移动开发框架。 它是免费和开源的。 但是,顾名思义,它仅适用于Android。 与其他许多移动平台一样,AndEngine使用OpenGL作为其渲染引擎,并通过扩展Box2D作为其物理引擎。

下一个手机游戏选择哪个平台?

AndEngine支持动画精灵粒子系统 ,并允许通过实体修改器补间实体。 AndEngine还提供了Camera类,使您可以轻松地在游戏世界中移动。

AndEngine中没有专门的场景管理,但是您可以找到许多有关如何构建简单场景管理器的示例。 如果您只想发布Android应用程序,并且Java是您选择的语言,那么此框架是一个不错的选择。

13. libGDX

libGDX是另一个Java游戏开发框架。 它是跨平台的,可以编译为Windows,OS X,Linux,Android,iOS,Blackberry和HTML5。 libGDX还使用OpenGL作为其渲染引擎,并且利用Box2D来模拟物理。

libGDX具有Camera类,用于移动,缩放和旋转对象的Action类,以及用于显示粒子的ParticleEmitter类。 它通过TiledMap类支持平铺地图,可以与Tiled编辑器一起使用。

下一个手机游戏选择哪个平台?

libGDX附带了一些额外的工具,例如纹理打包粒子编辑器位图字体生成器

如果Java是您的首选语言,并且您希望创建一个跨平台的游戏,那么libGDX是一个不错的框架。

结论

在本文中,我们介绍了几个游戏开发框架和引擎。 现在,您应该有一个更好的主意,即哪种解决方案最适合您的需求以及下一个游戏的需求。 感谢您的阅读,希望您对本文有所帮助。

翻译自: https://code.tutsplus.com/articles/which-platform-to-choose-for-your-next-mobile-game--cms-25843