Newsletter

Easy Multiplatform Game Development with Unity: What you need to know before you start

▲ Unity James Stone Senior Manager

Recently, the pattern of game release has become similar to basic information covering PC-mobile, PC-console, or PC-console-mobile, except for some small indie or exclusive works. Due to differences in standards and specifications between platforms, it was not easy to transfer a game developed for one platform to another. However, with advances in game development hardware and technology, it is becoming increasingly easier to develop games for multiple platforms before release.

Unity has been focused on PC and console games, which game developers have been focusing on for a long time, as well as mobile since the emergence of mobile games, responding to different platform environments. In addition, it has been constantly developing technologies related to various platforms, such as actively investing in VR / AR technology. Unity senior manager James Stone and Shell Games senior engineering manager Michael Lee presented the process of developing responsive games with a small number of people on stage at GDC 2023.

▲ If you are new to Unity, start with an understanding of the engine version.

According to James Stone, a senior manager, in the recent multi-platform game development process, mobile-PC response generally proceeds without much difficulty. However, other multi-platforms such as PC console, mobile console, and mobile VR require separate measures or understanding due to issues such as managing each SDK source and platform.

If you’re new to the Unity engine after hearing that multi-platform game development is easy, you might be confused about which version to choose. This is because the concepts like LTS and Tech Stream, which Unity has recently introduced, are not familiar. LTS is a version supported by long-term service support, and is close to the official release version of the version with the corresponding year attached. Most of the functions have been checked, and cross-platform support has been confirmed. On the other hand, the technology stream is a stage where new features are introduced and technically verified.

Once you know the information about the engine, you should also check the target platform. Normally, I think that Windows PC is not a big problem, but there are cases where it is not. This is because there are cases where it runs on Windows PC but does not run on Linux. In addition, since the language or structure based on each platform is different, and the applicable plugins are different, you need to check this part and configure the code or construction to reduce’ the effort to rework.

Some may ask if it is possible to draw a platform-matched build directly from the Unity editor, but senior manager Stone dismissed it saying that the editor is different from the hardware. This is because builds in the editor are a kind of test, and you cannot test 100% on every feature of the platform.

▲ In particular, consoles are comfortable when supported by an understanding of each environment.

Therefore, all console platform companies have devkits for developers, and they provide them to those who want to develop games for the platform after going through a verification process. Since each platform’s GPU, CPU, RAM environment, performance, storage method, data processing, etc. are different, it is necessary to know to some extent even if the Unity engine is used.

In addition, he emphasized the importance of setting milestones and continuing profiling after the test build. This was because platform-specific optimization would proceed smoothly. To this end, Unity has a profiler that can identify things like memory leaks on all platforms, so using it will be very helpful in optimization and profiling, he added.

After completing all the above processes, it is submitted to the platform holder and a release date is set. Senior manager Stone warned that this process also takes a considerable amount of time, and is often hampered by the discovery of issues that he had not even thought about after submitting the application. Therefore, it was recommended not only to be ready for the deadline, but also to test the devkit at least once before submitting it. In fact, some of the developers skip the test because they want to release it quickly after the development is completed, but it takes more time if a problem occurs during the review process .

▲ Don’t modify and submit an issue after inspection, but test it beforehand to find and submit it to save time

Shell Games, presented as an example of a successful multi-platform response, is a game company that supported Innerloss ‘Emysg Ni to be able to respond to VR as well. Senior Manager Michael Lee explained that the development of VR Among Us started with custom packages containing the Unity editor tool that can respond to different VR platforms. Additionally, due to the nature of VR, there are different types of controllers and head-up displays, and accordingly, the plug-in and input XR system was used in a plug-and-play environment rather than a lump sum approach.

Also, as we are preparing to respond to a completely different VR environment in the mobile-PC environment, we focused on ensuring that not only developers but also artists and designers can check performance indicators from planning. This was because they had to share the process so that they could come up with the optimized development direction for the platform together. After that, Unity profiling was done inside the engine and while running on different devices aggressively several times, and became more aggressive in optimization.

The development of a multi-platform game itself still requires not only Unity, but also an understanding of the platform and iterative work for optimization. However, senior manager Michael Lee added that not only is the process of repeatedly checking in Unity faster, but profiling to increase efficiency has become more sophisticated, so active use of this will greatly aid in response to all platforms.