很多人都梦想着创造自己的游戏。但在开始开发之前,你需要确定游戏引擎,其中有很多。
什么是游戏引擎?简而言之,这是一组简化游戏最常用功能的系统。当然,您可以自己从头开始编写引擎,但这将花费不合理的长时间。在本文中,我们将介绍用于开发移动设备游戏的流行游戏引擎。比较他们的能力,你可以选择最适合自己的,并创造下一个大热门。
我们来看看清单吧!
Corona SDK
Corona SDK是一款用于为iOS和Android创建游戏的跨平台引擎。 API允许您制作2D游戏,还可以使用基于Lua的API创建复杂的功能。此外,您还可以使用Corona Ads从Corona SDK中获利。通过实时测试,Corona的开发非常简单。
Corona包括Corona Editor,Sublime Text插件等许多有趣的功能。 OS X上提供的Composer GUI将为您提供一个图形环境,您可以在其中创建游戏关卡,并使用Corona的物理引擎查看对象如何相互交互。
Corona SDK上的示例开发→
虚幻引擎
由于强大的工具(特别是通过Blueprint的可视化脚本),开源代码和社区的不断发展,UE4允许由一小组开发人员创建高质量的项目。
有一个虚幻引擎的免费版本,过渡到专业版将花费一笔可观的金额。
虚幻引擎使用C ++,你可以在其上开发iOS和Android游戏。该引擎有一个强大的编辑器,其中包括几个高度专业化的编辑器。他们的发展将帮助您的发展。有些编辑甚至可以替换某些程序。所有这些子系统的相互作用只是一个杰作。
编辑器中的可视化非常棒。只是眼睛从丰富的渲染选项(相关,例如,照明或着色器的复杂性)中分散。在这里你会发现很多超现代的着色器,它们还带有引擎。原则上,Unreal提供市场上最好的渲染机制。你可以创造出令人惊叹的美丽场景。
虚幻引擎上的示例开发→
团结
Unity被认为是业界最好的游戏引擎之一。有一个免费版本可用于创建2D和3D游戏。它涵盖24个平台:移动设备,VR,桌面,控制台和网络平台。
该引擎支持三种脚本语言:C#,JavaScript(修改),Boo(Python方言)。 Unity有一个简单的DragDrop接口,易于配置。它由各种窗口组成,因此您可以直接在编辑器中调试游戏。 Unity中的项目分为阶段(级别) – 包含其游戏世界的单个文件以及一组对象,脚本和设置。
Unity上的示例开发→
移相器
Phaser是一个基于PIXI.js.库开发桌面和移动HTML5游戏的框架。支持Canvas和WebGL渲染,动画精灵,粒子,音频,不同的输入方法和对象物理。 Phaser在麻省理工学院的许可下以开源方式分发。这意味着您可以不受限制地使用代码,但是在软件副本中保留版权声明,也就是说,在许可证文本中,您需要为此框架添加版权说明。他得到理查德戴维和他周围社区的大力支持。
Phaser→上的示例开发
的Cocos2D-X
Cocos2d-x于2010年出现,是一个在麻省理工学院许可下分发的开源项目。 Cocos2d-x中游戏的开发基于sprite的使用。借助这些容器,可以创建各种场景,例如游戏位置或菜单。使用C ++,JavaScript或Lua中的动画或代码来管理精灵。借助现代视觉界面,精灵可以轻松更改,移动,缩放和操作。
像Zynga,Wooga,Glu,Big Fish Games,Konami等大家伙使用Cocos2d-x来开发游戏。
的Cocos2D
Cocos2d是一个开源框架,与Swift和Objective-C兼容。它通过SpriteBuilder Android插件支持iOS和OS X以及Android(假设您的代码是用Objective-C编写的)。正在开发支持Swift for Android。
Cocos2d中的项目是通过SpriteBuilder创建的 – SpriteBuilder是一个图形开发环境,可用于快速创建原型和游戏。
场景管理通过CCDirector类执行,该类可以使用CCTransition类的多个转换。它使用类和动作提供动画,例如移动,缩放和旋转CCAnimation及其CCAction类。 Cocos2d支持带有CCParticleSystem类的粒子系统和带有CCTiledMap类的瓦片贴图。
SpriteKit
2D引擎,针对Apple设备创建游戏进行了优化。它基于流行的物理引擎Box 2D。由于开发人员专门为Apple设备创建了它,因此它显着地赢得了其他引擎的速度。提供在游戏中创建图形的所有基本功能:支持OpenGL-ES着色器,灯光效果,动画,碰撞检查,文本渲染,视频等。
CreateJS
CreateJS是用于创建开源游戏的各种库的集合:
- EaselJS,
- TweenJS,
- SoundJS,
- PreloadJS。
EaselJS是一个基于Canvas API的库。 TweenJS是Canvas中的动画。她完美地应对了她的任务,为你做了事并简化了许多事情。正如您已经猜到的那样,SoundJS旨在与音频配合使用。 PreloadJS可帮助您管理和协调数据下载。
这些库可以一起工作,也可以单独工作。每个模块负责其部分工作,并且不与其他模块交叉,因此如有必要,您可以使用其他开发人员的类似功能替换它。但对于那些打算在没有更改的情况下使用整个集合的人来说,可以将它们链接起来以简化工作并编写代码。
AndEngine
AndEngine是用于为Android编写2D游戏的最着名的免费开源引擎之一。与许多其他平台一样,AndEngine通过扩展使用OpenGL进行渲染,使用Box2D进行物理。
libGDX
libGDX是一个跨平台的框架,用Java编写并与OpenGL一起使用。为多个发布游戏的平台提供支持。 Ingress(神奇宝贝GO的前身)是使用libGDX开发的。社区支持也很棒,多亏了这一点,您可以获得优秀的工作文档。
使用libGDX的开发示例→
结论
在本文中,我们研究了几个用于游戏开发的框架和引擎。现在您应该了解哪种解决方案最适合您开发下一款手机游戏的需求。谢谢你的关注。我希望这篇文章对你有用。