"If the manufacturer of any software library can consider that he is entitled to a share of the installation, this is a dangerous path," — a conversation with experts about Unity Runtime

The new Unity collection is called Runtime Fee. It got its name in honor of the Unity Runtime library set. The company believes that since libraries are installed on users’ devices along with the game, the developer must pay for it. We talked about Unity Runtime with Kirill Shabordin, the founder of Yerevan Cowboys Games, and Alexey Pechenin, the founder of Infinite Art Solutions.

What is Unity Runtime?

Kirill Shabordin

This is a certain number of libraries and executable files included in any game made on the Unity engine. Very simply put, any game on Unity is a framework and a player that is produced by Unity Technologies, as well as user code and resources. There is nothing new in this, and with a discount on technical details, all other game engines have a similar layout.

Alexey Pechenin

Unity consists of two main parts: Unity Editor and Unity Runtime. If Unity Editor is used for game development, then Unity Runtime ensures that they work on devices. It is responsible for drawing graphics, physical calculations, sound and other functions. When you export a project from Unity, Runtime helps it work on different platforms, including Windows, macOS, Linux, Android, iOS, consoles, and even web browsers via WebAssembly and WebGL.

Is Unity’s claim that every game puts Unity Runtime true?

Kirill Shabordin

Of course, it is. To be a purist, it does not “put”, but “includes”, “contains”. It is quite obvious that Unity Technologies is more interesting to consider itself a product supplier to the end user, so they try to treat their toolkit as a separate b2c product. But from the point of view of this logic, any software library is a b2c product, but this is not the case, at least in the modern world.

Alexey Pechenin

Unity Runtime is automatically installed on any player’s device when installing or launching a game developed on Unity. Without it, the game simply won’t start.

When using Unity Runtime by the game, is there an access to Unity servers?

Kirill Shabordin

As far as I know, no.

For Unity frameworks to function, there is no need to access any external resources.

There are several features in the framework that use the Unity Technologies infrastructure (for example, CI or an advertising integration system), but if you do not explicitly use them, the game does not access any external servers for functioning (of course, I have not checked this for a long time, but we would all know if this is the case).

Alexey Pechenin

It all depends on the goals of the developers. In the standard configuration, Unity Runtime does not access Unity servers when the game is running. It works locally on the user’s device.

However, if you use Unity Analytics or Unity Ads, then you may need to access Unity servers to perform their functions.

When access to the servers is still going on (as in the case of LiveOps games, for example), is it possible to say that for Unity these requests incur additional costs?

Kirill Shabordin

The cost structure of Unity Technologies, although it is a public company, is quite a complicated thing. I didn’t really understand in a couple of days where they had spent, for example, $2 billion in 2022.

Speaking of LiveOps, these Unity services are paid, they have their own tariffs, which are quite at the level of competitors. That is, it is not a free application for the engine.

Alexey Pechenin

If a game on Unity uses services that require access to servers, for example, Unity Analytics, Unity Ads or Unity Networking, then, of course, there will be network interaction. But not all games need them. Only those games that work with these services will interact with Unity servers.

As for LiveOps games that are constantly updated after release, they will access servers, but they will not necessarily be Unity servers. It depends on how the developers set up the game.

For Unity, providing and maintaining such cloud services, of course, requires additional costs, but they can be paid off by paid licenses from those who use their functionality.

Are there any requirements in the Unity policy that oblige you to pull up data from Unity servers when downloading the game during installation? If so, can we say that Unity itself obliged every game made on its engine to use its servers for various optional formalities, and then wanted to collect tax from this?

Kirill Shabordin

No. For the reasons described above: you are not obliged to use Unity services in any way, no one forces you to do this. All these services have their own tariffs and they quietly existed before the current crisis.

Alexey Pechenin

Previously, this was not in the Unity license agreement. The use or rejection of Unity cloud services was voluntary. The engine offers these services as additional features to simplify development, monetization, or data analysis.

How many other tools and services have their own Runtime that works on a similar principle? And on whose side are the costs usually in this case?

Kirill Shabordin

Any engine is put together in about the same way, it is not an invention of Unity Technologies. The fact that they called the standard runtime framework a thing that is “delivered” to the user is a purely political move for a simpler explanation of monetization solutions: “Since we put a runtime on each download, then we want to get it from each download.”

Actually, any manufacturer of any software library can now reason the same way: “Since you are using my library, then I am not delivering it to you as a developer, but to the end user. This means that I am entitled to a share from the installation.”

This is a dangerous path that can change the development landscape as a whole, and not the death of already dying hyper—casual factories or the need to pay 20 cents from a premium game, from which Steam has already received 30% of revenue.

Alexey Pechenin

Other modern engines, for example, Unreal Engine, CryEngine or Godot also have their own Runtime environment. It is responsible for ensuring that the compiled code works on various platforms.

Godot, for example, is an open source engine. Developers only pay for servers if they are needed. I think it’s a sound decision. If Unity were offered by the developer to pay for, conditional, Unity Analytics, then this would be an understandable solution. You use services, you earn thanks to them, you pay developers. This is a clear concept.

We at Infinite Art Solutions would be happy to pay Unity for their services if they solved our problems. Which company will refuse to use built-in services that do not overload projects?

This is the same as if Microsoft would oblige all users to pay for having a pre-installed Edge browser on their PC, even though you don’t use it.

Comments
Write a comment...
Related news