Many people dream of creating their own game. But before you start to develop it, you need to determine the game engine, which there are a lot of.
What is a game engine? Briefly, this is a set of systems that simplify the most frequently used functions of the game. You can, of course, write the engine from scratch yourself, but it will take an unreasonably long time. In this article, we’ll look at popular game engines for developing games for mobile devices. Comparing their capabilities, you can choose the most suitable for yourself and create the next big hit.
Let’s take a look at the list!
Corona SDK is a cross-platform engine for creating games for iOS and Android. The API allows you to make 2D games, and also helps you create complex functions using the Lua-based API. In addition, you can monetize the Corona SDK using Corona Ads. Development with Corona is simple enough thanks to testing in real time.
Corona includes such interesting features as Corona Editor, Sublime Text plugin and many others. The Composer GUI available on OS X will provide you with a graphical environment in which you can create levels for games and see how objects interact with each other using the Corona’s physics engine.
Example development on the Corona SDK →
UE4 allows creating high-quality projects by a small group of developers due to powerful tools (in particular, visual scripting via Blueprint), open source code and constant growth of the community.
There is a free version of the Unreal Engine, the transition to the Pro version will cost a tidy sum.
Unreal Engine uses C ++, on it you can develop games for iOS and Android. The engine has a powerful editor, which includes several highly specialized editors. Their development will help you in your development. Some editors can even replace certain programs. The interaction of all these subsystems is simply a masterpiece.
Visualization in the editor is great. Just the eyes are scattered from the abundance of rendering options (related, for example, with lighting or with the complexity of shaders). Here you will find a lot of ultramodern shaders, which also come with the engine. In principle, Unreal offers the best rendering mechanism on the market. You can create amazingly beautiful scenes.
Example development on Unreal Engine →
Unity is considered one of the best game engines in the industry. There is a free version that can be used to create 2D and 3D games. It covers 24 platforms: mobile devices, VR, desktop, console and web platform.
Example development on Unity →
Phaser is a framework for developing desktop and mobile HTML5 games, based on the PIXI.js. library. Supports rendering in Canvas and WebGL, animated sprites, particles, audio, different input methods and physics of objects. Phaser is distributed with open source under the license of MIT. This means that you can use the code without restrictions, but with the preservation of copyright notices in the copies of the software, that is, in the text of your license you will need to add an indication of copyrights to this framework. He is well supported by Richard Davy and the community around him.
Example development on Phaser →
Big guys like Zynga, Wooga, Glu, Big Fish Games, Konami, use Cocos2d-x to develop games.
Cocos2d is an open-source framework that is compatible with Swift and Objective-C. It has support for iOS and OS X, as well as Android via the SpriteBuilder Android plug-in (assuming that your code is written in Objective-C). Support for Swift for Android is under development.
Projects in Cocos2d are created through SpriteBuilder – a graphical development environment that can be used to quickly create prototypes and games.
Scene management is performed through the CCDirector class, which can use multiple transitions with the CCTransition class. It offers animation using a class and actions such as move, scale, and rotate CCAnimation with its CCAction-class. Cocos2d has support for particle systems with the CCParticleSystem class and tile maps with the CCTiledMap class.
2D-engine, optimized for creating games for Apple-devices. It is based on the popular physical engine Box 2D. Since the developers created it sharpened specifically for Apple devices, it significantly wins the speed of the other engines. Provides all the basic functions for creating graphics in games: support for OpenGL-ES-shaders, lighting effects, animation, collision checking, text rendering, video and so on.
CreateJS is a collection of various libraries for creating open source games:
EaselJS is a library that is based on the Canvas API. TweenJS is an animation in the Canvas. And she perfectly copes with her task, doing for you and simplifying many things. SoundJS, as you’ve already guessed, is designed to work with audio. PreloadJS helps you manage and coordinate data downloads.
These libraries can work both together and separately. Each module is responsible for its part of the work and does not intersect with the rest, so if necessary, you can replace it with a similar functionality from other developers. But for those who intend to use the entire set without changes, it is possible to link them to simplify the work and write the code.
AndEngine is one of the most famous free open source engines for writing 2D games for Android. AndEngine, like many other platforms, uses OpenGL for rendering and Box2D for physics through the extension.
libGDX is a cross-platform framework that is written in Java and works with OpenGL. Offers support for several platforms for publishing the game. Ingress (the predecessor of Pokémon GO) was developed using libGDX. Community support is also great, thanks to this you can get excellent documentation for the job.
Development example using libGDX →
In this article, we looked at several frameworks and engines for game development. Now you should have an idea of which solutions will best suit your needs in developing the next mobile game. Thank you for attention. I hope that the article was useful to you.