📜 ⬆️ ⬇️

4 advantages of Unity3D, as well as a useful tool to speed up the application development process

We continue a series of interviews with our experts. This time Andrei Rylach, Senior Unity3D developer XIMAD, Inc., answered questions. Andrew spoke about the benefits of Unity and revealed how to accelerate the process of developing mobile applications.



You work as a game developer. Tell me which game engines are most popular today?
')
AR: It all depends on the purpose for which to choose the game engine. The most popular engines for developing mobile games today are Unity3D, UE4, Marmalade and Cocos2D. Each of them has its advantages. But since we mainly focus on the development of cross-platform games, Unity was in the first place, until recently, because it allows you to create games on various platforms with minimal time costs. Now for Unity there is a real competitor in the face of UE4.

How did your familiarity with Unity happen?

.R .: I used to program in C # and came to the company where there was a vacancy for a game developer. So I met Unity, which was very easy to work with.

What games is Unity used to develop most often?

.R .: Unity can be used to implement large AAA projects as well as small 2D games for mobile platforms. 2D support in Unity appeared relatively recently, before that I had to use various plugins (Toolkit 2D, for example). The latest versions of the game engine allow you to comfortably create games for a wide palette of various devices. Thanks to him, we are creating cross-platform mobile games with good graphics, but at the same time not setting strict requirements for mobile devices.

Can you highlight the competitive advantages of Unity over other engines?

.R .: The first advantage, in my opinion, is the C # language itself. This language is high-level and allows the programmer to easily enter into the development of the game. This is an important point, because unlike other engines that use the C ++ language, there are many elements and techniques in C # that are already implemented, and the programmer only needs to use them.

The second advantage is cross-platform, i.e. The same code, written on the Unity engine, with minimal changes can be transferred to different platforms (PC, Mac, Android, iOS, Web, game consoles). This is a huge plus, which reduces the time to develop the game several times.

The third advantage is a good community. This means that the various functions of the engine have a clear description with examples on the developer’s website, which can be accessed at any time. If something still remains unclear, the support service will answer the question that has arisen.

And the fourth advantage is the Asset Store, where there are a huge number of different plugins and resources for creating the game. Of course, some of them are free, some are paid, but they are all collected in one place with a convenient search and the ability to download, integrate and get working functionality right away.

The advantages of Unity are now known, but are there any disadvantages?

AR: Perhaps the only disadvantage is the cost of the Pro-version. For an ordinary or novice freelancer, $ 4500 per license (Pro-license Unity + iOS Pro + Android Pro) so that you can take advantage of all the “buns” of the Pro-version and publish it in iOS and Android markets, quite expensive. But recently there was a release of Unity 5 at GDC in San Francisco , which is completely free without any deductions from income earned. In the Personal Edition version, only additional services are not available, such as Unity Analytics Pro, Unity Cloud Build Pro, and some others. This version is most suitable for novice developers and small companies. If you still need to buy the Pro-version, Unity offers it for $ 75 per month.

Are there any nuances of working with Unity?

AR: There are nuances when working on any game engine, as in any other business. It is possible to cite typical, in my opinion, errors of beginner Unity developers, which I admitted and which novices familiar to me allowed. The first is the use of a small number of scripts, making the code of one script grow to unreadable sizes. The second is the use of a large number of flags instead of using the event system and callbacks. The third is the lack of optimization of textures and the amount of materials on the game scene. In general, Unity has a very good Community, which allows you to quickly get used to the game engine.

You mentioned that Unity helps to reduce the development time of a game or application several times. Are there any developments that allow you to simplify and speed up the process of creating a game?

A.R .: Yes, we have the Multiplatform Solutions Framework (MSF) - a tool that simplifies many aspects of creating a game in terms of storing files on a server, receiving files from a server, storing a player’s profile, statistics, integrating with social networks, etc. The functionality is implemented on the server side, and for the Unity developer a plug-in is written that can be used in any project, which is a significant plus.

Tell me more about the Multiplatform Solutions Framework.

A.R .: First of all, MSF helps to use the same player profile on different devices. In a cross-platform game, the user can play on Android, on iOS, on the Web and its progress will remain everywhere: the profile will be the same for all platforms. This is the first.

The second is storing and retrieving files. Often the game requires storing some content on the server: if the game is client-server or the game has a custom configuration (for example, the ability to change levels after the game is released), then you need a configuration update mechanism for the game. And MSF allows you to do this by storing files and providing a simple API for receiving these files: files can be uploaded to the server from the editor, and on the client side, the implemented MSF functionality will allow you to get updated files and change the gameplay.

And the third is the functionality already implemented on the MSF server side for integration with social networks. For example, inviting friends to the game, sending gifts, charging bonuses to players and push notification.

What are the benefits of using Multiplatform Solutions Framework for companies, developers and players?

.R .: The main advantage is the reduction of the project implementation period. MSF is a single server that everyone understands and uses in various games, and there is no need to write it for each game. We simply adapt MSF for each project.

In addition, MSF is a handy tool for customizing game content, and is actively used by us in all games. For me, as a developer, I can highlight the following benefits:

In addition, MSF also has an analytical module that helps us better understand our target audience:

MSF also helps us collect user data from social networks.
In turn, players freely enter the game from different devices under the same profile, have the ability to restore a deleted profile with all purchases made, receive notifications that keep them updated on all events and updates of the game.

If you have questions - ask. We are happy to answer them!

Source: https://habr.com/ru/post/252525/


All Articles